ไม่ได้เข้ามาอัพเดทนานแล้วก็เลยหาเรื่องมาลงไว้ซะหน่อย เอาที่เป็นสาระๆ หน่อยก็แล้วกันนานๆ ที ฮ่าๆ เกี่ยวกับการเขียนฟังก์ชันคำนวณระยะเวลาระหว่างวันสองวันก็แล้วกัน เห็นใช้บ่อย เขียนด้วย PHP นะครับ ฟังก์ชันนี้จะรับตัวแปรที่เป็นเวลาในหน่วย วินาที (Unix timestamp)สองตัวด้วยกัน และจะคืนค่าที่คำนวณได้กลับมาในรูปแบบของอาร์เลย์ (array)
function remainTime($fromTime=0, $toTime = 0) { $returnTime = array('day'=>0,'hour'=>0,'minute'=>0,'second'=>0); $seconds = floor($toTime - $fromTime); if($seconds < 0){ return $returnTime; } $remainDays = floor($seconds / 86400); $remainHours = floor(($seconds % 86400)/3600); $remainMinutes = floor(($seconds % 3600)/60); $remainSeconds = $seconds % 60; if($remainDays > 0){ $returnTime['day'] = $remainDays; } if($remainHours > 0){ $returnTime['hour'] = $remainHours; } if($remainMinutes > 0){ $returnTime['minute'] = $remainMinutes; } if($remainSeconds > 0){ $returnTime['second'] = $remainSeconds; } return $returnTime; }
ค่าที่คืนกลับมาให้จะอยู่ในรูปแบบนี้ครับ
$returnTime = array('day'=>0,'hour'=>0,'minute'=>0,'second'=>0);
ตัวอย่างการนำไปใช้ครับ
$now=time(); //เวลาปัจจุบันครับ $target=strtotime('2010-07-06 21:20:00'); //เวลาในอนาคตครับ $remainTime=remainTime($now,$target); var_dump($remainTime);
หรือเพื่อนๆ อาจจะนำไปประยุกต์เพิ่มเติมก็ได้ครับ เช่น อาจจะรับตัวแปรเป็นวันที่ไปเลยก็ได้ หวังว่าจะมีประโยชน์กับเพื่อนๆ บ้างนะครับ ^^