PHP strtotime返回false

时间:2016-05-18 18:26:49

标签: php strtotime

我有一个jquery函数,它将日期'27 / 05/2016 11:25 PM'传递给PHP文件。 PHP文件会将其更新到数据库。

我正在使用strtotime将此字符串转换为日期格式'05 / 27/2016 11:25 PM'但是strtotime返回false。

我的PHP日期转换:

$EndDate = strtotime($Date);
$NewEndDateValue = date('m/d/Y h:i A', $EndDate);

var_dump($NewEndDateValue); //this returns false

1 个答案:

答案 0 :(得分:2)

默认情况下,

strtotime()会将/分隔符的日期视为日期的美国格式,它们从日期的中间开始,然后从那里向外工作(go figure)。可以这样说,但是期望逻辑机器(计算机)以这种方式工作是完全不合逻辑的。

无论如何,您只需将/转换为-date()将采用逻辑日期格式,因此可以正常工作。

<?php
$Date = '27/05/2016 11:25 PM';
$dat = str_replace('/', '-', $Date);
$EndDate = strtotime($dat);

$NewEndDateValue = date('m/d/Y h:i A', $EndDate);

var_dump($NewEndDateValue); // "05/27/2016 11:25 PM"