NumberFormatter::create
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Create a number formatter
Description
Oop (method)
Procedural
Oop (constructor):
Creates a number formatter.
Parameters
localeLocale in which the number would be formatted (locale name, e.g. en_CA).
styleStyle of the formatting, one of the format style constants. If
NumberFormatter::PATTERN_DECIMALorNumberFormatter::PATTERN_RULEBASEDis passed then the number format is opened using the given pattern, which must conform to the syntax described in ICU DecimalFormat documentation or ICU RuleBasedNumberFormat documentation, respectively.patternPattern string if the chosen style requires a pattern.
Return Values
Returns NumberFormatter object or null on error.
Errors/Exceptions
A ValueError is thrown if locale is invalid.
Changelog
| Version | Description |
|---|---|
| 8.4.0 | A ValueError is thrown if locale is invalid. |
| 8.0.0 | pattern is nullable now. |
Examples
numfmt_create() example
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
$fmt = numfmt_create( 'it', NumberFormatter::SPELLOUT );
echo numfmt_format($fmt, 1142)."\n";
?>NumberFormatter::create() example
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo $fmt->format(1234567.891234567890000)."\n";
$fmt = new NumberFormatter( 'it', NumberFormatter::SPELLOUT );
echo $fmt->format(1142)."\n";
?>The above example will output:
1.234.567,891
millicentoquarantadue