Создайте объект даты и времени, который отстает на два месяца, затем используйте модификатор first/last day of this month
. Модификатор this month
работает с месяцем объекта, поэтому, если дата объекта - август, он будет искать первый и последний дни августа.
Это означает, что вы можете указать любое значение для -2 months
(например, February
, -1 month
), и он получит даты начала и окончания этого месяца.
$start = new DateTime("-2 months");
$end = clone $start;
$start->modify("first day of this month");
$end->modify("last day of this month");
echo $start->format("Y-m-d")." - ".$end->format("Y-m-d");
В октябре 2019 года это выводит,
2019-08-01 - 2019-08-31