我已经浏览过各种stackoverflow解决方案和其他博客,但它仍然无法解决我的问题。
让我们说今天的日期是: 2013-12-28 我希望在1个月后得到日期,它应该显示 2014-01-28
$date = date('o-m-d');
$final = date('o-m-d', strtotime("+1 month", $date));
echo $final;
以上是我的代码。它返回 02/01/1970 。
我也尝试过mktime方法,但它仍显示1970年的输出。
我做错了什么?
顺便说一句。我在托管服务器上工作。
非常感谢。 :)
答案 0 :(得分:3)
$date = new DateTime( 'o-m-d' );
echo $date->modify( '+1 month' )->format('o-m-d');
答案 1 :(得分:2)
如果您希望当前日期为+1个月,请使用:
$final = date('o-m-d', strtotime("+1 month"));
或者给定日期:
$date = date('o-m-d');
$final = date('o-m-d', strtotime($date . " +1 month"));
echo $final;
如果你想使用strtotime的第二个参数,它必须是一个时间戳。
答案 2 :(得分:2)
OOP
方式.. <?php
$date = new DateTime('2013-12-28');
$date->add(new DateInterval('P1M'));
echo $date->format('Y-m-d'); //prints 2014-01-28