如何从yy / mm / dd获取yyyy / mm / dd日期格式?

时间:2016-10-04 11:15:42

标签: php

    $date = "2016-10-04";
    $date1 = str_replace('-', '/', $date);
    $tomorrow = date('y-m-d',strtotime($date1 . "+1 days"));

    echo $tomorrow;

使用上面的php代码将一天添加到给定值。最后它返回16-10-05。但是我需要全年作为2016-10-05。我怎么做到的?

5 个答案:

答案 0 :(得分:3)

试试这个,使用'Y'而不是'y'

$date = "2016-10-04";
$date1 = str_replace('-', '/', $date);
$tomorrow = date('Y-m-d',strtotime($date1 . "+1 days"));

echo $tomorrow;

<强> DEMO

答案 1 :(得分:3)

全年使用'Y'而不是'y'

$date = "2016-10-04";
$date1 = str_replace('-', '/', $date);
$tomorrow = date('Y-m-d',strtotime($date1 . "+1 days"));

echo $tomorrow;

答案 2 :(得分:2)

只需使用'Y-m-d'代替'y-m-d'

有关日期格式值的完整列表,请参阅http://php.net/manual/en/function.date.php

答案 3 :(得分:2)

您需要更改&m-d-m-d&#39;到了Y-m-d&#39;在你的约会功能。

Y - A four digit representation of a year
y - A two digit representation of a year

参考链接:http://www.w3schools.com/php/func_date_date_format.asp

尝试以下代码:

$date = "2016-10-04";
$date1 = str_replace('-', '/', $date);
$tomorrow = date('Y-m-d',strtotime($date1 . "+1 days"));

echo $tomorrow;

答案 4 :(得分:2)

使用DateTime总是更好。以下应该有效!

$date = new DateTime("2016-10-04");
$interval = new DateInterval('P1D');
echo $date->add($interval)->format("Y-m-d");

注意:你可以摆脱$date1 = str_replace('-', '/', $date);这对我来说似乎没用。

您可以从PHP手册中阅读有关DateTime和DateInterval的更多信息。

干杯!