无法将DateTime修改回现状

时间:2017-12-30 05:42:09

标签: php datetime

我创建了一个DateTime对象,将其修改为14天前返回,当我将其修改回今天时,它没有被修改。

任何帮助都会非常感激!

   $sql_query_date = new DateTime("now",new DateTimeZone("America/New_York"));
   $sql_query_date->modify("14 days ago");
   $start_sql = $sql_query_date->format("Y-m-d");

   $sql_query_date->modify("now");
   $end_sql =  $sql_query_date->format("Y-m-d");

1 个答案:

答案 0 :(得分:1)

now表示您设置的当前日期不是今天的日期。因此,您需要重新创建日期对象,或者您可以保留修改值并将其还原。

   $sql_query_date = new DateTime("now",new DateTimeZone("America/New_York"));
   $sql_query_date->modify("14 days ago");
   $start_sql = $sql_query_date->format("Y-m-d");
   print_r($start_sql);
   $sql_query_date = new DateTime("now",new DateTimeZone("America/New_York"));
   $end_sql =  $sql_query_date->format("Y-m-d");
   print_r($end_sql);

OR

   $sql_query_date->modify("-14 days ago");
   $end_sql =  $sql_query_date->format("Y-m-d");
   print_r($end_sql);