NumberFormatter::format
numfmt_format
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::format -- numfmt_format — Format a number
说明
面向对象风格
$num
, int $type
= NumberFormatter::TYPE_DEFAULT): string|false过程化风格
$formatter
, int|float $num
, int $type
= NumberFormatter::TYPE_DEFAULT): string|falseFormat a numeric value according to the formatter rules.
参数
formatter
-
NumberFormatter object.
num
-
The value to format. Can be int or float, other values will be converted to a numeric value.
type
-
The formatting type to use. Note that
NumberFormatter::TYPE_CURRENCY
is not supported; use NumberFormatter::formatCurrency() instead.
返回值
Returns the string containing formatted value, or false
on error.
示例
示例 #1 numfmt_format() example
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
$data = numfmt_format($fmt, 1234567.891234567890000);
if(intl_is_failure(numfmt_format($fmt))) {
report_error("Formatter error");
}
?>
示例 #2 OO example
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
$fmt->format(1234567.891234567890000);
if(intl_is_failure($fmt->getErrorCode())) {
report_error("Formatter error");
}
?>
以上示例会输出:
1.234.567,891
注释
注意:
Formats achievable by this method of formatting cannot fully use the possibilities of underlying ICU library, such as to format currency with narrow currency symbol.
To fully utilize them use msgfmt_format_message().
参见
- numfmt_get_error_code() - Get formatter's last error code
- numfmt_format_currency() - Format a currency value
- numfmt_parse() - Parse a number
- msgfmt_format_message() - Quick format message
用户贡献的备注 1 note
on Linux you may need to install icu-data-full package for NumberFormatter to work properly with non-english locales.
备份地址:http://www.lvesu.com/blog/php/numberformatter.format.php