php通过千位分组来格式化数字的函数number_format()

黄舟
发布: 2023-03-16 22:32:01
原创
1906 人浏览过

实例

格式化数字:

<?php
echo number_format("1000000")."<br>";
echo number_format("1000000",2)."<br>";
echo number_format("1000000",2,",",".");
?>
登录后复制

定义和用法

number_format() 函数通过千位分组来格式化数字。

注释:该函数支持一个、两个或四个参数(不是三个)。

语法

number_format(number,decimals,decimalpoint,separator)
登录后复制
登录后复制

参数 描述

number 必需。要格式化的数字。如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。

decimals 可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。

decimalpoint 可选。规定用作小数点的字符串。

separator 可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。
注释:如果设置了该参数,那么所有其他参数都是必需的。

技术细节

返回值: 返回已格式化的数字。

PHP 版本: 4+

更新日志: 自 PHP 5.4 起,该函数在参数 decimalpoint 和 separator 中支持多字节。在之前的版本中,值使用每个分隔符的第一个字节。

更多实例

实例 1

您想要返回一个价格:一个参数将对数字进行舍入(格式化为不带小数位形式),两个参数将给出您想要的结果:

<?php
$num = 1999.9;
$formattedNum = number_format($num)."<br>";
echo $formattedNum;
$formattedNum = number_format($num, 2);
echo $formattedNum;
?>
登录后复制

有意思的number_format

number_format(number,decimals,decimalpoint,separator)
登录后复制
登录后复制

有四个参数,
第一个和第二个参数是必须的,第三个和第四个是可选项。但实际测试中第三个和第四个这两个参数必须同时存在,也就是要么都设置,要么都不设置。
没有设置第三个和第四个参数:

Number_format(13526, 2); echo 13,526.00;
登录后复制

如果你将这处理后的数字去累加,则只会得到一个13!。
设置了第三个和第四个参数

Number_format(23125, 2, ‘.&#39;,&#39;&#39;); echo 23125.00;
登录后复制

这时再对这处理后的数字进行运算的话则会正确执行! 
该函数的第三个参数表示 ‘小数点'位置用什么来表示,可以默认 . ,也可以设置成‘,'等其他符号。Ps:但我相信没人会这么干。 
第四个则表示每隔 千位时用什么来分割数字。如果没什么特殊要求,又要进行运算的话最好设置为空。

以上是php通过千位分组来格式化数字的函数number_format() 的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板