php日期格式YYYY-MM-DD从现在开始减去或增加一周?

Ada*_*han 28 php

today 22-05-2011 so it should be 29-05-2011? ( plus 1 week ) 
or
today 22-05-2011 so it should be 15-05-2011? ( minus 1 week ) 
Run Code Online (Sandbox Code Playgroud)

谢谢你的关注.

亚当拉马丹

Joh*_*hnP 64

使用strtotime()

echo date('d-m-Y', strtotime("+1 week")); //1 week in the future
echo date('d-m-Y', strtotime("-1 week")); //1 week ago
Run Code Online (Sandbox Code Playgroud)

  • 需要注意的是,这是一个非常糟糕的方法,`strtotime`返回自纪元以来的秒数,你可以简单地在几秒钟内加上或减去一周,并避免慢速调用`strtotime`.`$ date = date('dm-Y',time()+ 604800);` (2认同)

Luk*_*ský 29

您可以使用DateTime该类进行日历计算.对于exaple,要添加一周,您可以使用以下代码:

$date = new DateTime('22-05-2011');
$date->modify('+1 week');
Run Code Online (Sandbox Code Playgroud)


Joh*_*een 16

strtotime会处理这个问题.

$pDate = strtotime('22-05-2011 + 1 week');
echo date('d-m-Y',$pDate);
Run Code Online (Sandbox Code Playgroud)

补充:如果您想从特定日期开始.如果您只想"今天"+/-一周',请将JohnP的答案标记为正确.:)