3v4l.org

run code in 300+ PHP versions simultaneously
<?php $date = new DateTime('2019-12-24'); $properties = []; foreach ($date as $k => $v) { $properties[$k] = $v; } var_dump($date); var_dump((array) $date); var_dump($properties); echo json_encode($date), "\n"; echo json_encode((array) $date), "\n"; echo json_encode($properties), "\n";
Output for 7.4.0 - 7.4.13, 8.0.0 - 8.0.3
object(DateTime)#1 (3) { ["date"]=> string(26) "2019-12-24 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } array(3) { ["date"]=> string(26) "2019-12-24 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } array(0) { } {"date":"2019-12-24 00:00:00.000000","timezone_type":3,"timezone":"Europe\/Amsterdam"} {"date":"2019-12-24 00:00:00.000000","timezone_type":3,"timezone":"Europe\/Amsterdam"} []
Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.26
object(DateTime)#1 (3) { ["date"]=> string(26) "2019-12-24 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } array(3) { ["date"]=> string(26) "2019-12-24 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } array(3) { ["date"]=> string(26) "2019-12-24 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } {"date":"2019-12-24 00:00:00.000000","timezone_type":3,"timezone":"Europe\/Amsterdam"} {"date":"2019-12-24 00:00:00.000000","timezone_type":3,"timezone":"Europe\/Amsterdam"} {"date":"2019-12-24 00:00:00.000000","timezone_type":3,"timezone":"Europe\/Amsterdam"}