数字格式化- php,当number_format()遇到date_diff()时


number formatting - php, when number_format() meets date_diff()

我的系统:win7 32位,wampserver 2.1e请帮我找出以下困惑的解决方法。

<?php
echo number_format(10,2);   //output 10.00
$datetime1 = date_create('2012-12-13');
$datetime2 = date_create('2012-12-14');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%d');  //output 1 
echo number_format(10,2);   // output :.00
echo number_format(10,2);  //output 10.00 
?>

dateinterval->format之后的第一个number_format()得到错误的结果。是否number_format与日期间隔格式冲突?

我在Win7 64bit WampServer 2.2下运行了相同的脚本,我没有看到任何冲突。

可能你的困惑是因为你打印的值没有换行。

试试这个:

<?php
echo number_format(10,2)     . "<br>";
$datetime1 = date_create('2012-12-13');
$datetime2 = date_create('2012-12-14');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%d') . "<br>";
echo number_format(10,2)     . "<br>";
echo number_format(10,2)     . "<br>";

它打印:

10.00
1
10.00
10.00