-1

我知道 date("Y")、date("m") 和 date("d") 将分别返回当前年份 (2013)、月份 (07) 和日期 (11)。

我正在使用日期格式:“2013-07-11”。我有这样的当前日期。现在我想使用 PHP 以某种方式获取值“2013-06-11”和“2013-08-11”。

获取此值的代码可能是什么(上个月的同一日期和下个月的同一日期)?

我试过了:

$LastMonth = date ("m") - 1;
$LastDate = date("Y") . "-0" . $LastMonth . "-" . date("d");

但这会在 10 月返回错误。10 月将显示“2013-010-11”。

有什么更好的解决方案?谁能帮我?

4

4 回答 4

1

将它与 PHP 一起使用strtotime()

echo date('Y-m-d', strtotime('+1 month')); //outputs 2013-08-11
echo date('Y-m-d', strtotime('-1 month')); //outputs 2013-06-11
于 2013-07-11T09:01:29.440 回答
1
$date = new DateTime( "2013-07-11");
$date->modify("+1 month");
echo $date->format(‘l, F jS, Y’);
于 2013-07-11T09:08:13.950 回答
0

尝试这个

$lst_month=mktime(0,0,0,date('m')-1,date('d'),date('Y'));
echo "M<br>". date("Y-m-d",$lst_month);
$next_month=mktime(0,0,0,date('m')+1,date('d'),date('Y'));
echo "M<br>". date("Y-m-d",$next_month);
于 2013-07-11T09:04:29.207 回答
0
$nextmonth=date("dmy",strtotime("+1 month"));
$lastmonth=date("dmy",strtotime("-1 month"));
于 2013-07-11T09:10:52.220 回答