<?php
$start = new DateTime('2010-12-02');
$start->modify('first day of this month');
$end = new DateTime('2012-05-06');
$end->modify('first day of next month');
$interval = DateInterval::createFromDateString('1 month');
$period = new DatePeriod($start, $interval, $end);
foreach ($period as $dt) {
$month = $dt->format('m');
$year = $dt->format('Y');
if(date('Y-m',strtotime($end)) != $year.'-'.$month)
echo $dt->format("Y-m") . PHP_EOL;
}
Fatal error: Uncaught TypeError: strtotime(): Argument #1 ($datetime) must be of type string, DateTime given in /in/gUnVi:13
Stack trace:
#0 /in/gUnVi(13): strtotime(Object(DateTime))
#1 {main}
thrown in /in/gUnVi on line 13
Process exited with code 255.
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2010-12
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-01
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-02
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-03
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-04
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-05
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-06
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-07
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-08
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-09
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-10
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-11
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2011-12
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2012-01
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2012-02
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2012-03
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2012-04
Warning: strtotime() expects parameter 1 to be string, object given in /in/gUnVi on line 13
2012-05
Output for 5.2.13 - 5.2.17
Warning: DateTime::modify(): Failed to parse time string (first day of this month) at position 10 (o): The timezone could not be found in the database in /in/gUnVi on line 3
Warning: DateTime::modify(): Failed to parse time string (first day of next month) at position 10 (o): The timezone could not be found in the database in /in/gUnVi on line 5
Fatal error: Class 'DateInterval' not found in /in/gUnVi on line 6
Process exited with code 255.
Output for 5.2.0 - 5.2.12
Fatal error: Class 'DateInterval' not found in /in/gUnVi on line 6
Process exited with code 255.
Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6
Fatal error: Class 'DateTime' not found in /in/gUnVi on line 2
Process exited with code 255.
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.9
Fatal error: Cannot instantiate non-existent class: datetime in /in/gUnVi on line 2
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Cannot instantiate non-existent class: datetime in /in/gUnVi on line 2