<?php
/* generate random dates */
$dates = [];
for ($i=0;$i < 30;$i++) {
$dates[$i]['start'] = date("Y-m-d H:i:s", $start); }
$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);
PD9waHAKLyogZ2VuZXJhdGUgcmFuZG9tIGRhdGVzICovCiRkYXRlcyA9IFtdOwpmb3IgKCRpPTA7JGkgPCAzMDskaSsrKSB7Cgkkc3RhcnQgPSBtdF9yYW5kKDEsIHRpbWUoKSk7CiAgICAkZGF0ZXNbJGldWydzdGFydCddID0gZGF0ZSgiWS1tLWQgSDppOnMiLCAkc3RhcnQpOwogICAgJGRhdGVzWyRpXVsnZW5kJ10gPSBkYXRlKCJZLW0tZCBIOmk6cyIsIG10X3JhbmQoJHN0YXJ0LCB0aW1lKCkpKTsKfQoKJGluaXRpYWxEYXRlID0gbmV3IFxEYXRlVGltZTsKLyogaXRlcmF0ZSBvdmVyIGVhY2ggZGF0ZSAqLwpmb3JlYWNoKCRkYXRlcyBhcyAkcmVjb3JkKSB7Cgkkc3RhcnQgPSBEYXRlVGltZTo6Y3JlYXRlRnJvbUZvcm1hdCgnWS1tLWQgSDppOnMnLCAkcmVjb3JkWydzdGFydCddKTsKCSRlbmQgPSBEYXRlVGltZTo6Y3JlYXRlRnJvbUZvcm1hdCgnWS1tLWQgSDppOnMnLCAkcmVjb3JkWydlbmQnXSk7CglpZiAoJHN0YXJ0ICYmICRlbmQpIHsKCQkkZGlmZiA9ICRzdGFydC0+ZGlmZigkZW5kKTsKCQkkaW5pdGlhbERhdGUtPmFkZCgkZGlmZik7Cgl9Cn0KJGNvbXBhcmVEYXRlID0gbmV3IFxEYXRlVGltZTsKJGRpZmYgPSAkY29tcGFyZURhdGUtPmRpZmYoJGluaXRpYWxEYXRlKTsKCnZhcl9kdW1wKCRkaWZmKTsK