php strtotime 'now' и '-1 month' с одинаковой датой - PullRequest
0 голосов
/ 30 марта 2020

Мои две переменные

date("Y-m", strtotime ( '-1 month'))

и

date("Y-m", strtotime ( 'now'))

обе отображают 2020-03 в настоящее время в текущую дату 30/03/2020 В настоящее время это март 2020-03, так что -1 месяц должен показывать 2020-02

Какие у меня есть способы обойти это?

Спасибо

Ответы [ 2 ]

2 голосов
/ 30 марта 2020

Один из способов обойти это - использовать вывод first day of last month:

echo date("Y-m", strtotime('first day of last month'));

(по состоянию на 2020-03-30):

2020-02

Демо на 3v4l.org

0 голосов
/ 30 марта 2020

Вы можете использовать что-то вроде этого:

if (date("Y-m") == date("Y-m", strtotime ("-1 month"))) {
    echo date("Y-m", strtotime ("last day of last month"));
} else {
    echo date("Y-m", strtotime ("-1 month"));
}

демо на ideone.com

...