迄今为止的日期时间 (Y/m/d)

date time to date (Y/m/d)

如果我使用 $patient['DATE_UNIT_ADM'] 就把这个作为我的约会对象。

28/07/2012 00:00:00

但是当我这样做以将其转换为 Y/m/d 格式时,它会返回到

1970/01/01

$timestamp = strtotime($patient['DATE_UNIT_ADM']);
$AdmissionDate = date('Y/m/d', $patient['DATE_UNIT_ADM']);

这是为什么。 strtotime 发生了什么?

更新。

这里还有点好笑的。

$timestamp = strtotime($patient['DATE_UNIT_ADM']);

仍然没有给出任何值,但正在做

echo $patient['DATE_UNIT_ADM']

给我正确的日期。

任何想法

var_dump returns boolean falsevar_dump($patient['DATE_UNIT_ADM']) returns 字符串 '28/07/2012 00:00:00' (length=19)

解决方案

strtotime(str_replace("/", ".", $patient['DATE_UNIT_ADM']));

因为你使用了错误的变量:

$timestamp = strtotime($patient['DATE_UNIT_ADM']);
$AdmissionDate = date('Y/m/d', $timestamp);

您忘记了时间戳/使用了错误的变量(原始日期时间),如果您发布的代码是正确的:

$AdmissionDate = date('Y/m/d', $timestamp);