【问题标题】:How to decrement a date in a textbox?如何减少文本框中的日期?
【发布时间】:2016-04-01 07:54:48
【问题描述】:

如何将文本框中的日期递减 1 天?日期时间表的值为 2016-04-02。输出应该是 2016-04-01 因为我想减少 1 天。我试过这段代码:

 if(isset($_REQUEST["submit"]))
        {
        $dateschedule=security($_POST["dateschedule"]);
    echo    $new_time4 = date($dateschedule, strtotime('-1 day'));
        }

【问题讨论】:

    标签: php


    【解决方案1】:

    你的日期函数的格式不能像你期望的那样工作。见php date manual

    正如在another SO question 上发布的一样,您可以使用这个:

    $new_time4 = date('Y-m-d',(strtotime( '-1 day' , strtotime( $_POST["dateschedule"]))));
    

    【讨论】:

      【解决方案2】:

      您也可以通过使用 DateTime 来实现。

      $date = new DateTime('2016-04-02');
      $date->modify('-1 day');
      echo $date->format('Y-m-d');
      
      //Output: 2016-04-01
      

      https://3v4l.org/mD2GR

      我发现这更具可读性,您可以轻松查看自己在做什么,并且可以使用格式功能轻松更改输出。

      【讨论】:

        猜你喜欢
        • 2010-12-10
        • 2015-09-07
        • 2011-08-13
        • 1970-01-01
        • 1970-01-01
        • 2017-11-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多