Fri 21 Dec 2007 11:23:28
คือผมไปอ่านบทความ Calculate different between 2 dates in PHP way ที่ http://articles.modoeye.com/Design%20and%20Development/PHP/Calculate%20different%20between%202%20dates%20in%20PHP%20way.html ก็เลยสงสัยเกี่ยวกับ mktime หน่อยครับว่า
1.ทำไม $date2 มันไม่ใช่ 11 มกราคม 2550
$Hour = floor(($diff - ($Days * 86400)) / 3600);
$Minute = floor(($diff - (($Days * 86400) + ($Hour * 3600))) / 60);
$Second = floor(($diff - (($Days * 86400) + ($Hour * 3600) + ($Minute * 60))));
2.พอผม echo ค่า Hour, Minute, Second แล้วทำไมมันไม่มีค่าออกมาอะครับ มีแต่ Days อย่างเดียว
Fri 21 Dec 2007 14:37:02
echo sprintf('%d วัน %d ชั่วโมง, %d นาที, %d วินาที', $Day, $Hour, $Minute, $Second); เนื่องจากเวลาทั้งสองเป็นเวลาเที่ยงคืนเหมือนกันอาจจะไม่มีผลต่างของชั่วโมงครับ
Sat 22 Dec 2007 16:24:46
ผมก็ลองดูใหม่แล้วตามนี้
<?
$date1 = mktime(19,44,01,2,7,1999);
$date2 = mktime(0,0,0,11,6,2007);
//หาผลต่าง
$diff = $date2-$date1;
//ทำการแปลงจากผลต่างเป็นวินาทีเป็นระยะเวลา
$Days = floor($diff / 86400);
$Hour = floor(($diff - ($Days * 86400)) / 3600);
$Minute = floor(($diff - (($Days * 86400) + ($Hour * 3600))) / 60);
$Second = floor(($diff - (($Days * 86400) + ($Hour * 3600) + ($Minute * 60))));
echo sprintf('%d วัน %d ชั่วโมง, %d นาที, %d วินาที', $Day, $Hour, $Minute, $Second);
?>
แต่ว่าผลกลับเป็นแบบนี้แทน
0 วัน 4 ชั่วโมง, 15 นาที, 59 วินาที
*วันไม่ออก แต่อย่างอื่นออกหมด ไม่ทราบว่าเป็นอะไรครับ?

















