3v4l.org

run code in 300+ PHP versions simultaneously
<?php $startYear = 2010; $array = []; for ($x = $startYear; $x <= date('Y'); $x ++) { $date = DateTime::createFromFormat('Y-m-d\TH:i:s', $x . '-01-01T00:00:00'); $array[$x] = $date->format('Y-m-d\TH:i:s'); } var_dump($array); $array2 = []; $year = 2010; for ($x = 1; $x <= 12; $x ++) { $array2[$year.'-'.$x] = (new DateTime($year.'-'.$x.'-01T00:00:00'))->format('Y-m-d\TH:i:s'); } var_dump($array2);
Output for 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
array(9) { [2010]=> string(19) "2010-01-01T00:00:00" [2011]=> string(19) "2011-01-01T00:00:00" [2012]=> string(19) "2012-01-01T00:00:00" [2013]=> string(19) "2013-01-01T00:00:00" [2014]=> string(19) "2014-01-01T00:00:00" [2015]=> string(19) "2015-01-01T00:00:00" [2016]=> string(19) "2016-01-01T00:00:00" [2017]=> string(19) "2017-01-01T00:00:00" [2018]=> string(19) "2018-01-01T00:00:00" } array(12) { ["2010-1"]=> string(19) "2010-01-01T00:00:00" ["2010-2"]=> string(19) "2010-02-01T00:00:00" ["2010-3"]=> string(19) "2010-03-01T00:00:00" ["2010-4"]=> string(19) "2010-04-01T00:00:00" ["2010-5"]=> string(19) "2010-05-01T00:00:00" ["2010-6"]=> string(19) "2010-06-01T00:00:00" ["2010-7"]=> string(19) "2010-07-01T00:00:00" ["2010-8"]=> string(19) "2010-08-01T00:00:00" ["2010-9"]=> string(19) "2010-09-01T00:00:00" ["2010-10"]=> string(19) "2010-10-01T00:00:00" ["2010-11"]=> string(19) "2010-11-01T00:00:00" ["2010-12"]=> string(19) "2010-12-01T00:00:00" }

preferences:
159.79 ms | 411 KiB | 5 Q