NumberFormatter::setPattern

numfmt_set_pattern

(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)

NumberFormatter::setPattern -- numfmt_set_patternConfigure le modèle du formateur

Description

Style orienté objet

public NumberFormatter::setPattern ( string $pattern ) : bool

Style procédural

numfmt_set_pattern ( NumberFormatter $fmt , string $pattern ) : bool

Configure le modèle utilisé par le formateur. Ne peut pas être utilisé avec un formateur basé sur les règles.

Liste de paramètres

fmt

L'objet NumberFormatter.

pattern

Le modèle, dans la syntaxe décrite dans la » documentation ICU DecimalFormat.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec numfmt_set_pattern(), Style procédural

<?php
$fmt 
numfmt_create'de_DE'NumberFormatter::DECIMAL );
echo 
"Modèle : ".numfmt_get_pattern($fmt)."\n";
echo 
numfmt_format($fmt1234567.891234567890000)."\n";
numfmt_set_pattern($fmt"#0.# kg");
echo 
"Modèle : ".numfmt_get_pattern($fmt)."\n";
echo 
numfmt_format($fmt1234567.891234567890000)."\n";
?>

Exemple #2 Exemple avec numfmt_set_pattern(), style POO

<?php
$fmt 
= new NumberFormatter'de_DE'NumberFormatter::DECIMAL );
echo 
"Modèle : ".$fmt->getPattern()."\n";
echo 
$fmt->format(1234567.891234567890000)."\n";
$fmt->setPattern("#0.# kg");
echo 
"Modèle : ".$fmt->getPattern()."\n";
echo 
$fmt->format(1234567.891234567890000)."\n";
?>

L'exemple ci-dessus va afficher :

Modèle : #,##0.###
1.234.567,891
Modèle : #0.# kg
1234567,9 kg

Voir aussi

add a note add a note

User Contributed Notes 1 note

up
-1
Anonymous
4 months ago
setPattern appears to influence only the behavior of the format method, not the parse method of the NumberFormatter object.

$pattern = '#,##0';
$frmtr = NumberFormatter::create('en-US', NumberFormatter::DECIMAL);
$frmtr->setPattern($pattern);
echo $frmtr->parse('12.345');

// returns 12
To Top