<?php
/* generate random dates */
$dates = [];
for ($i=0;$i < 30;$i++) {
	$start = mt_rand(1, time());
    $dates[$i]['start'] = date("Y-m-d H:i:s", $start);
    $dates[$i]['end'] = date("Y-m-d H:i:s", mt_rand($start, time()));
}

$initialDate = new \DateTime;
/* iterate over each date */
foreach($dates as $record) {
	$start = DateTime::createFromFormat('Y-m-d H:i:s', $record['start']);
	$end = DateTime::createFromFormat('Y-m-d H:i:s', $record['end']);
	if ($start && $end) {
		$diff = $start->diff($end);
		$initialDate->add($diff);
	}
}
$compareDate = new \DateTime;
$diff = $compareDate->diff($initialDate);

var_dump($diff);
