将当前日期增加5天

Jas*_*per 7 php date

$date = date('Y-m-d',current_time('timestamp', 0));
Run Code Online (Sandbox Code Playgroud)

如何更改$date$date + 5 days

PHP版本是5.2.

此代码不起作用:

$date_cur = date('Y-m-d',current_time('timestamp', 0));
echo $date_cur . ' <br>';
$date_cur_plus = date($date_cur, strtotime('+5 days'));
echo $date_cur_plus;
Run Code Online (Sandbox Code Playgroud)

给我:

2011-11-29 
2011-11-29
Run Code Online (Sandbox Code Playgroud)

mat*_*ino 28

$date = date('Y-m-d', strtotime('+5 days'));
Run Code Online (Sandbox Code Playgroud)


Yes*_*rry 17

您可以使用mktime()时间戳.

就像是:

$date = date('Y-m-d', mktime(0, 0, 0, date('m'), date('d') + 5, date('Y')));
Run Code Online (Sandbox Code Playgroud)

使用strtotime()速度更快,但我的方法仍然有效,并且在您需要进行大量修改时非常灵活.另外,strtotime()无法处理模棱两可的日期.

编辑

如果您必须将5天添加到格式中已存在的日期字符串YYYY-MM-DD,则可以将其拆分为数组并使用这些部分mktime().

$parts = explode('-', $date);
$datePlusFive = date(
    'Y-m-d', 
    mktime(0, 0, 0, $parts[1], $parts[2] + 5, $parts[0])
    //              ^ Month    ^ Day + 5      ^ Year
);
Run Code Online (Sandbox Code Playgroud)


Tur*_*tan 5

面向对象风格:

<?php
    $date = new DateTime('now');
    $date->add(new DateInterval('P5D'));
    echo $date->format('Y-m-d') . "\n";
?>
Run Code Online (Sandbox Code Playgroud)

程序风格:

<?php
    $date = date_create('2016-01-01');
    date_add($date, date_interval_create_from_date_string('5 days'));
    echo date_format($date, 'Y-m-d');
?>
Run Code Online (Sandbox Code Playgroud)