注释:该函数支持一个、两个或四个参数(不是三个)。
number | 必需。要格式化的数字。如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。 |
decimals | 可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。 |
decimalpoint | 可选。规定用作小数点的字符串。 |
separator | 可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。 注释:如果设置了该参数,那么所有其他参数都是必需的。 |
其中第四个参数是默认的千位作为分割符号的,也就是当你输入了1000,返回出来的是1,000.00这种格式
当我们在做支付的时候需要转成分,如果用了
当数字大于1000的时候就会出现逗号隔开,后续支付的时候转成分的时候用intval取整的时候就会造成转换错误,1.200.00就会变成1,造成支付错误,正确的写法是把四个参数都写全:
- $payAmount = number_format($allmoney,2);
这样1200就会变成1200.00,就可以避免这种低级错误
- $payAmount = number_format($allmoney,2,'.','');
文章点评