日期时间转换被错误地修改

时间:2017-07-21 05:32:48

标签: php datetime

我在让代码返回正确答案时遇到问题。

$Birthd = '06-27-1996';

$NewISSdate = date("m-d-Y", strtotime(date("m-d-Y", strtotime($Birthd)) . " +21 years"));

当我运行此操作时,响应为:"12-31-1969"

我相信这是一个默认的日期,但我该怎么做才能修复我的代码?如果使用其他$Birthd字符串运行,例如"07-03-1996".

2 个答案:

答案 0 :(得分:0)

更改 - 到/并尝试...

$Birthd = '06/27/1996';

$NewISSdate = date("m/d/Y", strtotime(date("m/d/Y", strtotime($Birthd)) . " +21 years"));

答案 1 :(得分:0)

您需要更改字符串日期格式,然后像下面一样添加年份: -

$Birthd = '06-27-1996';
$Birthd = str_replace("-","/",$Birthd);

echo $NewISSdate = date("Y-m-d", strtotime(date("Y-m-d", strtotime($Birthd)) . " + 21 years"));

输出: - https://eval.in/835509https://eval.in/835555

参考: - php different acceptable date formats