简体   繁体   中英

php, when number_format() meets date_diff()

my system: win 7 32bit, wampserver 2.1e please help me find out the solution of following confusion.

<?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 
?>

the first number_format() after dateinterval->format get a wrong result. does number_format conflicts with dateinterval format?

I have ran the same script under Win7 64bit WampServer 2.2 and I didn't see any conflicts.

Probably your confusion comes from the fact that you are printing the values without newlines.

Try this:

<?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>";

It prints:

10.00
1
10.00
10.00

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM