ในตัวอย่างนี้จะเป็น Function คำนวณระยะห่างระหว่างวันที่กำหนด เช่น
วันที่เริ่ม คือ 2014-05-07 08:50:00
วันที่สิ้นสุด คือ 2019-05-07 22:54:00
ผลการทำงาน ช่วงเวลาห่างระหว่างวันเริ่ม และวันสิ้นสุด คือ
5 Year 26 days 14 hours 4 minutes
function date_getFullTimeDifference( $start = null, $end = null ){ $str = ''; $uts['start'] = strtotime($start); $uts['end'] = strtotime($end); if( $uts['start']!==-1 && $uts['end']!==-1 ) { if( $uts['end'] >= $uts['start'] ) { $diff = $uts['end'] - $uts['start']; if( $years=intval((floor($diff/31104000))) ) $diff = $diff % 31104000; $str .= $years > 0 ? $years.' Year ' : ''; if( $months=intval((floor($diff/2592000))) ) $diff = $diff % 2592000; $str .= $months > 0 ? $months.' months ' : ''; if( $days=intval((floor($diff/86400))) ) $diff = $diff % 86400; $str .= $days > 0 ? $days.' days ' : ''; if( $hours=intval((floor($diff/3600))) ) $diff = $diff % 3600; $str .= $hours > 0 ? $hours.' hours ' : ''; if( $minutes=intval((floor($diff/60))) ) $diff = $diff % 60; $str .= $minutes > 0 ? $minutes.' minutes ' : ''; return $str; } else { echo "Ending date/time is earlier than the start date/time"; } } else { echo "Invalid date/time data detected"; } } //การเรียกใช้งาน echo date_getFullTimeDifference('2014-05-07 08:50:00','2019-05-07 22:54:00');
ขอขอบคุณข้อมูลจาก https://stackoverflow.com