strtotime每次刷新分钟和秒钟都会改变原因

时间:2015-06-26 07:05:26

标签: php

$ order_startdate = date(' Y-m-d H:i:s'); //当前日期&时间

$NewDate=Date('Y-m-d H:i:s', strtotime("+3 days", strtotime($order_startdate))); // 3 days increase Date And Time also

 var_dump($NewDate);

我得到字符串(19)2015-06-29 06:56:42

刷新后

已更改2015-06-29 07:03:19

我希望时间不要改变我想要的时间

$ NewDate我在订阅付款的NextPayment日期使用

现在 我在奋斗!

由于

3 个答案:

答案 0 :(得分:0)

每次加载脚本时都会创建一个新的Date()实例,这意味着每次刷新页面时都会返回新的时间值,因为时间的性质(它随时间变化:D)

如果要节省时间,这意味着,在将变量创建到数据库/其他位置时,需要写入变量的值。

答案 1 :(得分:0)

根据@Slim Kallari的回答,您可以这样做,只有在尚未设置新日期时才能获得新日期:

if(!isset($_SESSION['NewDate']))
{
   $NewDate=Date('Y-m-d H:i:s', strtotime("+3 days",   strtotime($order_startdate)));
   $_SESSION['NewDate'] = $NewDate;


}
else
{
    $NewDate= $_SESSION['NewDate'];
}

var_dump($NewDate);

这样,如果一个实例尚未存在,则创建一个新的Date实例。但是,请确保在创建会话变量之前添加session_start();

答案 2 :(得分:0)

最后我研究自己,并最终在这里实施工作解决方案最好不要dom只是删除dom并尝试它应该做一个技巧

$ date = $ order-> order_date; // checkout placeorder date

$ trial =' 1';

$ subsc = date(' Ymd H:i:s',strtotime($ date。' +'。$ trial。' days')) ;