日期时间AM/PM rconversion to standard format into database in laravel 5.8

Datetime with AM/PM rconversion to standard format into database in laravel 5.8

我有以下格式的日期

$date = "6.17.2019 12:00:00 AM."

我需要将其转换为 Y-m-d h:i:s。 我尝试了以下代码行,

$regdate = \Carbon\Carbon::parse($date)->format('Y-m-d h:i:s');

但它导致错误。

DateTime::__construct(): Failed to parse time string (6.17.2019 12:00:00 AM.) at position 7 (1): Unexpected character"

期望的输出是:

2019-06-17 00:00:00

我假设这个 Carbon 东西扩展了 PHP DateTime class?

使用createFromFormat()

$date = DateTime::createFromFormat('d.m.Y H:i:s A.', '6.17.2019 12:00:00 AM.');
echo $date->format('Y-m-d H:i:s');

这会给你:

2020-05-06 00:00:00

在这里查看 https://3v4l.org/g53Xp

并阅读 PHP 的 DateTime class https://www.php.net/manual/en/datetime.createfromformat.php

你可以将格式更改为碳,然后可以更改为任何格式。

$date = "6.17.2019 12:00:00 AM.";

        $regdate = \Carbon\Carbon::createFromFormat('m.d.Y h:i:s A.', '6.17.2019 12:00:00 AM.');
        $regdate = \Carbon\Carbon::parse($regdate)->format('Y-m-d');
        echo $regdate;