Эти вопросы будут похожи на старые в месяц, но у меня есть специальная проблема. Я не пытаюсь считать месяцы между двумя датами, но я пытаюсь получить месяцы, включенные в две даты. Объясняю. У меня есть 2 даты:Получите все месяцы между двумя датами в PHP
$begin = new DateTime('2014-07-20');
$end = new DateTime('2014-10-10');
Между этими двумя датами у меня есть 4 месяца: июль, август, сентябрь, октябрь. Но со сценарием я использую, я не могу найти 4 месяца включены, но только 3. Это сценарий:
$interval = DateInterval::createFromDateString('1 month');
$period = new DatePeriod($begin, $interval, $end);
$counter = 1;
foreach($period as $dt) {
echo $dt->format('m');
$counter++;
}
echo $counter;
Как подсчитать все эти 4 месяца в цикле?
I w ish сделать цикл через все эти месяцы – pollux1er
Ваш пример будет работать только для случаев, когда день в $ begin будет меньше, чем день в $ end. Легким решением было бы установить день в $ начиная с 1-го числа в месяц и установить день в $ end на любой день, не первый (2-й, 3-й или последний). [Пример вашего измененного кода.] (Https://eval.in/191289) –