您好我正在尝试将时间与当前日期时间相加,此代码似乎有效:
$now = time();
$_day = strtotime('+1day',$now);
$_week = strtotime('+7day',$now);
$_month = strtotime('+1month',$now);
$_year = strtotime('+1year',$now);
我想知道的是,是否有其他任何方式,也许更好的方式这样做...任何人都可以告诉我新的方式和我应该转向另一种语法的原因? 我想尽可能准确地做到这一点,所以如果我能反映这个脚本就很棒!
感谢
编辑:
要明确我需要使用unix时间戳我不需要格式化日期/日期时间
答案 0 :(得分:2)
如果您使用的PHP版本允许(PHP 5> = 5.3.0)您使用DateTime和DateInterval类,则可以使用它们。
示例:
$dateTime=new DateTime();
$plusDay=new DateInterval('P1D');
var_dump($dateTime->add($plusDay));
$dateTime=new DateTime();
$plusWeek=new DateInterval('P1W');
var_dump($dateTime->add($plusWeek));
$dateTime=new DateTime();
$plusMonth=new DateInterval('P1M');
var_dump($dateTime->add($plusMonth));
我希望这有用。
答案 1 :(得分:1)
我相信strtotime()
就像你要用PHP一样简单。 this SO question的所有3个答案都选择使用该语法,我在网络上看到的所有各种教程都使用它。 strtotime()
比其他方法更容易考虑日期算术。
答案 2 :(得分:0)
试试这个解决方案:
date("Y-m-d", strtotime("+1 day"));
date("Y-m-d", strtotime("+7 days"));
date("Y-m-d", strtotime("+1 month"));
date("Y-m-d", strtotime("+1 year"));