我是PHP的新手,我想减去两个php echo语句,但结果得到0。
这些是echo语句;
echo number_format($row_sum['total_amount'], 2, ".", ",");
echo $row['amount_allocated'];
这是带零(0);
的结果代码echo $row['amount_allocated'] - number_format($row_sum['total_amount'], 2, ".", ",");
答案 0 :(得分:1)
number_format
的结果是一个字符串,而不是一个数字 - 你不能在算术中使用带逗号的数字。首先进行减法,然后格式化结果:
$amt_remaining = $row['amount_allocated'] - $row_sum['total_amount'];
echo number_format($amt_remaining, 2, ".", ",");
答案 1 :(得分:0)
您需要在数字格式函数中进行减法。
答案 2 :(得分:0)
这根本听起来不对。我想你想要的是:
echo number_format($row['amount_allocated'] - $row_sum['total_amount'], 2, ".", ",");
因此,您将格式应用于减法的结果。
答案 3 :(得分:0)
感谢大家的贡献,这给了我解决方案的想法。
根据Barmar和Blake A. Nichols的说法,我删除了算术中的逗号,然后分配变量如下:
$ a = $ row_sum ['total_amount']; $ b = $ row ['amount_allocated'];
在回显结果时进行格式化:
echo number_format($ b - $ a,2,“。”,“,”);