PHP strtotime returns false


PHP strtotime returns false

我有一个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

strtotime()默认情况下将带有/分隔符的日期视为日期的wierd USA格式,它们从日期中间开始,然后向外工作(见图)。这样说很好,但期望逻辑机(计算机)以这种方式工作是完全不合逻辑的。

无论如何,您所需要做的就是将/转换为-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"