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

时间:2012-06-25 08:42:55

标签: php

我有以下代码,

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

哪个在localhost中正常工作。但是,当我实时推送时,请始终返回1970-01-01

服务器设置中是否有任何遗漏?善意的建议

2 个答案:

答案 0 :(得分:4)

你可以试试这个:

$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")));

这是一种更普遍的方式。

答案 1 :(得分:2)

我知道这有点旧但是...... 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()函数的格式相同。