上个月的第一天在日期功能中不起作用


First day of last month in date function is not working?

我有下面的代码,

$lastmonthLastDay =   date('Y-m-d', strtotime("last day of last month"));
$lastmonthFirstDay= date('Y-m-d', strtotime("first day of -1 month"));

这在本地主机中完全有效。但是当我在现场推送它时,总是返回1970-01-01.

我在服务器设置中遗漏了什么吗? 请提供建议

你可以试试这个:

$firstDay = date('d-m-Y', mktime(0, 0, 0, date("m", strtotime("-1 month")), 1, date("Y",strtotime("-1 month"))));
$lastDay = date('d-m-Y', mktime(-1, 0, 0, date("m"), 1, date("Y")));

这是一种更通用的方法。

我知道

这有点旧了,但是...PHP 5.x 中的标准 DateTime 类非常适合此:

    $last_month = new DateTime('now');
    $last_month->modify('-1 month');
    echo "Last month: ".$last_month->format('Y-m-1 00:00:00')."'n";

格式与 date() 函数的格式相同。