3v4l.org

run code in 300+ PHP versions simultaneously
<?php function intervalToSecs(DateInterval $interval): int { $secs = $interval->s; $secs += ($interval->i * 60); $secs += ($interval->h * 60 * 60); if ($interval->days) { $secs += ($interval->days * 60 * 60 * 24); } else { $secs += ($interval->d * 60 * 60 * 24); } return $secs; } $twoDaysTwelveHours = new DateInterval("P2DT12H"); $sixtyHours = new DateInterval("PT60H"); var_dump(intervalToSecs($twoDaysTwelveHours)); var_dump(intervalToSecs($sixtyHours)); var_dump($twoDaysTwelveHours); var_dump($sixtyHours);
Output for 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
int(216000) int(216000) object(DateInterval)#1 (10) { ["y"]=> int(0) ["m"]=> int(0) ["d"]=> int(2) ["h"]=> int(12) ["i"]=> int(0) ["s"]=> int(0) ["f"]=> float(0) ["invert"]=> int(0) ["days"]=> bool(false) ["from_string"]=> bool(false) } object(DateInterval)#2 (10) { ["y"]=> int(0) ["m"]=> int(0) ["d"]=> int(0) ["h"]=> int(60) ["i"]=> int(0) ["s"]=> int(0) ["f"]=> float(0) ["invert"]=> int(0) ["days"]=> bool(false) ["from_string"]=> bool(false) }
Output for 7.1.25 - 7.1.28, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33
int(216000) int(216000) object(DateInterval)#1 (16) { ["y"]=> int(0) ["m"]=> int(0) ["d"]=> int(2) ["h"]=> int(12) ["i"]=> int(0) ["s"]=> int(0) ["f"]=> float(0) ["weekday"]=> int(0) ["weekday_behavior"]=> int(0) ["first_last_day_of"]=> int(0) ["invert"]=> int(0) ["days"]=> bool(false) ["special_type"]=> int(0) ["special_amount"]=> int(0) ["have_weekday_relative"]=> int(0) ["have_special_relative"]=> int(0) } object(DateInterval)#2 (16) { ["y"]=> int(0) ["m"]=> int(0) ["d"]=> int(0) ["h"]=> int(60) ["i"]=> int(0) ["s"]=> int(0) ["f"]=> float(0) ["weekday"]=> int(0) ["weekday_behavior"]=> int(0) ["first_last_day_of"]=> int(0) ["invert"]=> int(0) ["days"]=> bool(false) ["special_type"]=> int(0) ["special_amount"]=> int(0) ["have_weekday_relative"]=> int(0) ["have_special_relative"]=> int(0) }

preferences:
84.86 ms | 411 KiB | 5 Q