คำนวนค่าแตกต่างระหว่างค่าเวลา 2 ค่าในรูปแบบของ PHP เขียนเมื่อ 2009.06.30 โดย

การคำนวนหาระยะเวลาระหว่างค่าเวลา/วันที่ 2 ค่าเพื่อหาอายุ, หาระยะเวลาการทำงาน หรือเพื่อการอื่นๆ โดย algorithm อ่านได้ที่ Calculate different between 2 dates ทีนี้เรามาดูแนวการคำนวนในแนวทางของ PHP กันครับ

สมมติว่าเรามีข้อมูลวันที่ 15 กันยายน 2540 และวันที่ 1 พฤศจิกายน 2550
<?
//แปลงวันที่ไปเป็น Timestamp
$date1 = mktime(0,0,0,9,15,1997); //15 กันยายน 2540
$date2 = mktime(0,0,0,11,1,2007); //1 พฤศจิกายน 2550
//หาผลต่าง
$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))));
?>

คงมีคำถามว่าแล้วจะรู้ได้อย่างไรว่าค่าวันที่ไหนมีมากกว่ากัน เพราะถ้าสลับตำแหน่งจะทำให้ผลการคำนวนติดลบได้ ก็ไม่ต้องสนใจว่าจะได้ผลติดลบหรือไม่ ก็เพียงใส่ abs() เพื่อให้ค่ามีผลเป็นบวกเสมอ





คำเตือนคำเตือน เนื้อหาต่างๆ ในบทความ รวมถึงรูปภาพทั้งหมดในบทความนี้ เป็นความเห็นส่วนตัวของผู้เขียนแต่ละคน ซึ่งแต่ละคนได้ทำการลงทะเบียน และเขียนบทความลงใน Modoeye Articles นี้โดยไม่มีค่าธรรมเนียมใดๆ บทความเหล่านี้เป้าหมายเพื่อการศึกษา และความบันเทิงเท่านั้น การนำส่วนหนึ่งส่วนใดของบทความไปใช้งาน ควรทำการอ้างอิงถึงผู้เขียนและแหล่งที่มาด้วย