just a simple function that returns how many days, hours, minutes and seconds are left given a timestamp i put together. kinda bored so sharing some code XP
give either $time_left (time left in timestamp) or $endtime (an ending timestamp)
/* returns an array of [days],[hours],[minutes],[seconds] time left from now to timestamp given */ function timeleft($time_left=0, $endtime=null) { if($endtime != null) $time_left = $endtime - time(); if($time_left > 0) { $days = floor($time_left / 86400); $time_left = $time_left - $days * 86400; $hours = floor($time_left / 3600); $time_left = $time_left - $hours * 3600; $minutes = floor($time_left / 60); $seconds = $time_left - $minutes * 60; } else { return array(0, 0, 0, 0); } return array($days, $hours, $minutes, $seconds); }
i can’t wait to see the new dmb fully-functional and open to the public! you’ve put so much time and coding into it… it’s going to be awesome š
Thanks for sharing. Here’s the modified functions as formatted string with leading zeros.
function formatTimeLeft($time_left = 0, $sep = ‘:’) {
$hours = $minutes = $seconds = 0;
if($time_left > 0) {
$hours = floor($time_left / 3600);
$time_left = $time_left – $hours * 3600;
$minutes = floor($time_left / 60);
$seconds = $time_left – $minutes * 60;
}
// add leading zeros
$hours = str_pad($hours, 2, “0”, STR_PAD_LEFT);
$minutes = str_pad($minutes, 2, “0”, STR_PAD_LEFT);
$seconds = str_pad($seconds, 2, “0”, STR_PAD_LEFT);
// format
$arr = array($hours, $minutes, $seconds);
return implode($sep, $arr);
}