您好,欢迎访问一九零五行业门户网

解析PHP中的money_format ()函数

php中,我们经常需要将数字格式化成货币字符串,这时就需要使用php的内置函数money_format()函数,本文就带大家一起来看一看这个函数。首先我们来看一看这个函数的语法:
money_format ( string $format , float $number )
$format:规定要格式化的字符串及如何格式化字符串中的变量。单个 % 字符可选的标记(flags)可选的字段宽度可选的,左侧精度可选的,右侧精度必选的,单个转化字符。
$number:需要格式化的数字。
返回值:返回格式化后的字符。格式字符串前后的字符将原封不动返回。 传入的 number 如果不是数字,将返回 null 并且产生 e_warning。
注意:money_format()函数 此函数包装了 c 函数库中的 strfmon(),只被定义在运行该函数系统具有strfmon功能的时候才可使用,而windows系统没有,所有money_format()在windows中未定义,导致提示未定义错误。或者你所使用的php版本低于4.3。
1.正数的使用
<?php$number = 1234.56;// 打印 en_us locale 的国际化格式setlocale(lc_monetary, 'en_us');echo money_format('%i', $number) . "\n";// usd 1,234.56// 打印意大利国家的格式,带两位浮点小数`setlocale(lc_monetary, 'it_it');echo money_format('%.2n', $number) . "\n";// eu 1.234,56?>
2.负数的使用
<?php$number = -1234.5672;// 美国国家的格式,使用圆括号 () 标记负数。// 左侧精度使用十位setlocale(lc_monetary, 'en_us');echo money_format('%(#10n', $number) . "\n";// ($ 1,234.57)// 相似的格式,添加了右侧两位小数点的精度,同时用 * 来填充echo money_format('%=*(#10.2n', $number) . "\n";// ($********1,234.57)
3.格式字符串前后,添加一些简介
<?phpsetlocale(lc_monetary, 'en_gb');$fmt = 'the final value is %i (after a 10%% discount)';echo money_format($fmt, 1234.56) . "\n";// the final value is gbp 1,234.56 (after a 10% discount)
推荐:《2021年php面试题大汇总(收藏)》《php视频教程》
以上就是解析php中的money_format ()函数的详细内容。
其它类似信息

推荐信息