ไม่ได้เข้ามาอัพเดทนานแล้วก็เลยหาเรื่องมาลงไว้ซะหน่อย เอาที่เป็นสาระๆ หน่อยก็แล้วกันนานๆ ที ฮ่าๆ เกี่ยวกับการเขียนฟังก์ชันคำนวณระยะเวลาระหว่างวันสองวันก็แล้วกัน เห็นใช้บ่อย เขียนด้วย 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);
หรือเพื่อนๆ อาจจะนำไปประยุกต์เพิ่มเติมก็ได้ครับ เช่น อาจจะรับตัวแปรเป็นวันที่ไปเลยก็ได้ หวังว่าจะมีประโยชน์กับเพื่อนๆ บ้างนะครับ ^^