我想将 1000 格式化为 10.00 PHP number_format 函数似乎对此不起作用。
我努力了:
$amount2 = number_format("$cost",2,"",",");
echo "$cost";
有任何想法吗?有没有办法我可以操纵 number_format 来显示结果(即只在最后两位数字之前插入一个小数?
数字格式会改变“.” 到一个“,”,但你告诉它格式化一千。
$cost=1000;
echo number_format($cost,2,'.',',');
//1,000.00
你想要的只是:
$cost=1000;
echo number_format($cost/100,2,'.',',');
//10.00
第三个参数number_format
应该是您要用作小数点的字符。你为什么要传递一个空字符串?为什么将数字 ( $cost
) 放在字符串中?
尝试这个:echo number_format($cost,2,'.',',');
编辑:也许我误解了你的问题——如果你想让数字 1000 显示为 10.00,只需$cost
在调用之前除以 100即可number_format()
。
这对你来说合法吗?
<?php
$cost=1000;
echo substr($cost, 0, 2) . "." . substr($cost, 2);//10.00
1000 和 10.00 是完全不同的数字(值)。除以 100,然后正确格式化:
$cost = 1000 ;
$cost /= 100 ;
$amount2 = number_format($cost,2,".","");
echo $amount2 ;
试试这个代码:
$stringA= 1000;
$length=strlen($stringA);
$temp1=substr($stringA,0,$length-2);
$temp2=substr($stringA,$length-2,$length);
echo $temp1.".".$temp2; // Displays 10.00