【发布时间】:2015-08-01 15:29:42
【问题描述】:
我需要从过去的当月获取上个月。尝试了下面的代码,它确实适用于有 30 天的月份,但不适用于有 31 天的特定月份,即。 March, May, July, October and December
注意:问题可能听起来重复,但请完整阅读到最后。您可以通过更改系统并针对它测试以下代码来检查相同的问题。我需要上个月的输出格式为Jul
对于日期:30-Jul 输出是
Previous Month-Jun
Current Month-Jul
对于日期:31-Jul 输出是
Previous Month-Jul
Current Month-Jul
$prev_month = date('M', strtotime("last month"));
echo 'Previous Month--'.$prev_month;
echo 'Current Month--'.date('M');
也尝试了echo date('M', strtotime("-1 Months"));,但它的输出与上面相同。
如果当前月份是 (August) 和 31 天,而上个月是 (July) 和 31 天,那么它可以工作并显示正确的上个月,即 July,但如果当前月份有31 天和上个月有 30 或更短的天数。
我应该如何在当前月份的基础上获取正确的上个月?
【问题讨论】:
-
对月份使用“m”而不是“M” - echo date('m', strtotime("-1 Months"));