Snippet Name: Calculate the difference between two times formatted in HH:MM
Description: A script that calculates the difference between two times, formatted in HH:MM. For example, if you enter 23:40 and 01:30, it will calculate it as a time difference of "01:50".
Also see: » Get Relative Dates and Times
» Convert Seconds to Hours:Minutes:Secon...
» Calculate the difference between two t...
» %TYPE vs %ROWTYPE: What's the differen...
» Convert Minutes to Hours
» Convert Hours to Minutes
» Convert Standard time to 24-hour time ...
» Calculate time difference between two ...
» Show Runtime in days and hours
» Days in month #2
» Days in month one
» Convert minutes to hours #2
» Convert minutes to hours one
Comment: (none)
Language: PHP
Highlight Mode: PHP
Last Modified: May 14th, 2010
|
<?PHP
ECHO getTimeDiff("23:30","01:30");
FUNCTION getTimeDiff($dtime,$atime){
$nextDay=$dtime>$atime?1:0;
$dep=EXPLODE(':',$dtime);
$arr=EXPLODE(':',$atime);
$diff=ABS(MKTIME($dep[0],$dep[1],0,DATE('n'),DATE('j'),DATE('y'))-MKTIME($arr[0],$arr[1],0,DATE('n'),DATE('j')+$nextDay,DATE('y')));
$hours=FLOOR($diff/(60*60));
$mins=FLOOR(($diff-($hours*60*60))/(60));
$secs=FLOOR(($diff-(($hours*60*60)+($mins*60))));
IF(STRLEN($hours)<2){$hours="0".$hours;}
IF(STRLEN($mins)<2){$mins="0".$mins;}
IF(STRLEN($secs)<2){$secs="0".$secs;}
RETURN $hours.':'.$mins.':'.$secs;
}
?> |