当值达到十万,百万,十亿时,我想添加逗号分隔符。
那怎么办?
我在http://php.net/manual/en/function.number-format.php中的引用
我当前的代码可以在千位分隔符上添加逗号。
<?php
$output = "1000000";
if($output == "NULL"){
echo "0";
} else {
$output;
$new = number_format($output, 2, '.', ',');
if($new == "0.00"){
echo "0";
} else {
echo $new;
}
}
?>
输出:
1000 into 1,000.00
当价值达到一百万时,问题就来了。它显示如下。
100000,000.00
它不会在十万到百万之间添加逗号。
我希望最终值看起来像这样。
1,000,000.00
这里的专家可以帮助我解决这个问题。
先谢谢了。
答案 0 :(得分:0)
正如我在评论中所说,您因为这个错误而感到困惑。
echo $output = "1000000";
将其设置为"1000000"
,然后回显它,然后您的代码将执行,并且所有代码都卡在一起。
例如:
$output = 1000;//initial value
echo $output = "1000000"; //initial value is overwritten then echoed
if($output == "NULL"){
echo "0";
} else {
$output;
$new = number_format($output, 2, '.', ',');
if($new == "0.00"){
echo "0";
} else {
echo $new;
}
}
输出:
10000001,000,000.00
这是您未修改的代码。
现在,如果您删除该回声
$output = "1000000";
您将看到
1,000,000.00
现在请注意,除了删除第一个回声之外,我没有修改您的代码。现在,如果您真的想执行此echo $output = "1000000";
,那么我就不建议这样做了,因为它很丑。您可以在它后面加上某种分隔。
echo $output = "1000000";
echo PHP_EOL.'---------------'.PHP_EOL;
那你得到
1000000
---------------
1,000,000.00
默认情况下,echo不会创建新行。
有道理