PHP - 当前时间的总和时间,最佳实践

时间:2012-12-25 12:00:55

标签: php datetime time sum

您好我正在尝试将时间与当前日期时间相加,此代码似乎有效:

$now = time();
$_day = strtotime('+1day',$now);
$_week = strtotime('+7day',$now);
$_month = strtotime('+1month',$now);
$_year = strtotime('+1year',$now);

我想知道的是,是否有其他任何方式,也许更好的方式这样做...任何人都可以告诉我新的方式和我应该转向另一种语法的原因? 我想尽可能准确地做到这一点,所以如果我能反映这个脚本就很棒!

感谢

编辑:

要明确我需要使用unix时间戳我不需要格式化日期/日期时间

3 个答案:

答案 0 :(得分:2)

如果您使用的PHP版本允许(PHP 5> = 5.3.0)您使用DateTimeDateInterval类,则可以使用它们。

示例:

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