3v4l.org

run code in 300+ PHP versions simultaneously
<?php $data = [ ['from' => '2022-03-01 16:00', 'to' => '2022-03-02 12:00'], //20:00:00 ['from' => '2022-03-02 12:30', 'to' => '2022-03-02 22:02'], //09:32:00 ]; //total 29:32:00 $basis = '2000-01-01'; $dateBase = date_create('2000-01-01'); $date = clone $dateBase; foreach($data as $dates){ $dateFrom = date_create($dates['from']); $dateTo = date_create($dates['to']); $diff = $dateFrom->diff($dateTo); $date->add($diff); } $totalDiff = $dateBase->diff($date); $hours = $totalDiff->d *24 + $totalDiff->h; //days * 24 + hours echo 'Sum: '.$hours.$totalDiff->format(':%I:%S'); //Sum: 29:32:00
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
Sum: 29:32:00

preferences:
92.1 ms | 406 KiB | 5 Q