Adding days to $Date in PHP

前端 未结 9 1951
时光取名叫无心
时光取名叫无心 2020-11-22 09:32

I have a date returned as part of a mySQL query in the form 2010-09-17

I would like to set the variables $Date2 to $Date5 as follows:

$Dat

相关标签:
9条回答
  • 2020-11-22 10:11

    You can also use the following format

    strtotime("-3 days", time());
    strtotime("+1 day", strtotime($date));
    

    You can stack changes this way:

    strtotime("+1 day", strtotime("+1 year", strtotime($date)));
    

    Note the difference between this approach and the one in other answers: instead of concatenating the values +1 day and <timestamp>, you can just pass in the timestamp as the second parameter of strtotime.

    0 讨论(0)
  • 2020-11-22 10:13

    All have to use bellow code:

    $nday = time() + ( 24 * 60 * 60);    
    echo 'Now:       '. date('Y-m-d') ."\n";    
    echo 'Next Day: '. date('Y-m-d', $nday) ."\n";
    
    0 讨论(0)
  • 2020-11-22 10:15

    Here is the simplest solution to your query

    $date=date_create("2013-03-15"); // or your date string
    date_add($date,date_interval_create_from_date_string("40 days"));// add number of days 
    echo date_format($date,"Y-m-d"); //set date format of the result
    
    0 讨论(0)
  • 2020-11-22 10:15

    Here has an easy way to solve this.

    <?php
       $date = "2015-11-17";
       echo date('Y-m-d', strtotime($date. ' + 5 days'));
    ?>
    

    Output will be:

    2015-11-22
    

    Solution has found from here - How to Add Days to Date in PHP

    0 讨论(0)
  • 2020-11-22 10:17

    If you're using PHP 5.3, you can use a DateTime object and its add method:

    $Date1 = '2010-09-17';
    $date = new DateTime($Date1);
    $date->add(new DateInterval('P1D')); // P1D means a period of 1 day
    $Date2 = $date->format('Y-m-d');
    

    Take a look at the DateInterval constructor manual page to see how to construct other periods to add to your date (2 days would be 'P2D', 3 would be 'P3D', and so on).

    Without PHP 5.3, you should be able to use strtotime the way you did it (I've tested it and it works in both 5.1.6 and 5.2.10):

    $Date1 = '2010-09-17';
    $Date2 = date('Y-m-d', strtotime($Date1 . " + 1 day"));
    // var_dump($Date2) returns "2010-09-18"
    
    0 讨论(0)
  • 2020-11-22 10:24

    Here is a small snippet to demonstrate the date modifications:

    $date = date("Y-m-d");
    //increment 2 days
    $mod_date = strtotime($date."+ 2 days");
    echo date("Y-m-d",$mod_date) . "\n";
    
    //decrement 2 days
    $mod_date = strtotime($date."- 2 days");
    echo date("Y-m-d",$mod_date) . "\n";
    
    //increment 1 month
    $mod_date = strtotime($date."+ 1 months");
    echo date("Y-m-d",$mod_date) . "\n";
    
    //increment 1 year
    $mod_date = strtotime($date."+ 1 years");
    echo date("Y-m-d",$mod_date) . "\n";
    
    0 讨论(0)
提交回复
热议问题