尝试获取当前月份前一个月的数字

2022-08-30 20:32:26

我正在尝试获取当前月份之前的月份数(现在是(四月),所以我正在尝试获取 )。我正在尝试这个:0403

date('m')-1;

但我得到.但我想要的是得到.303


答案 1

正确的方法是:

date('m', strtotime('-1 month'));

正如你会看到奇怪的事情在一月份发生与其他答案。


答案 2

每当当月中的某一天(当前日期)大于上个月该月的最后一天时,当前接受的响应将导致不正确的答案。

例如,在 3 月 29 日(在非闰年)执行的结果将为 03,因为 29 大于 2 月份的任何一天,因此实际上将在 3 月 1 日返回。date('m', strtotime('-1 month'));strtotime('-1 month')

请改用以下内容:

date('n') - 1;

推荐