Subtract time in PHP

PsychoX picture PsychoX · Mar 28, 2011 · Viewed 42.2k times · Source

I have been looking for an answer for a few hours now, but I can't find one.

I'm writing a simple script. The user sets their work start and end time. So, for example, somebody is working from 8:00 to 16:00. How can I subtract this time to see how long the person has been working?

I was experimenting with strtotime(); but without success...

Answer

fab picture fab · Mar 28, 2011

A bit nicer is the following:


$a = new DateTime('08:00');
$b = new DateTime('16:00');
$interval = $a->diff($b);

echo $interval->format("%H");

That will give you the difference in hours.