在 PHP 中将 20231020105244000+0800 转换为 Y-m-d H:i:s 的格式

1、现有时间字段,其值为:20231020105244000+0800,可得知其在 PHP 的格式为:YmdHisvO。参考:https://www.php.net/manual/zh/datetime.format.php

2、基于 DateTime::createFromFormat — date_create_from_format — 根据指定格式解析时间字符串。打印返回的 DateTime 对象。如图1

图1

print_r(DateTime::createFromFormat("YmdHisvO", '20231020105244000+0800'));

DateTime Object
(
    [date] => 2023-10-20 10:52:44.000000
    [timezone_type] => 1
    [timezone] => +08:00
)

3、基于 DateTimeInterface::format — DateTimeImmutable::format — DateTime::format — date_format — 按照指定格式返回格式化后的日期 。

echo DateTime::createFromFormat("YmdHisvO", '20231020105244000+0800')->format("Y-m-d H:i:s");
2023-10-20 10:52:44
永夜