没有不值得去解决的问题,也没有不值得去学习的技术!

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

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

作者:

在

, ,

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

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

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

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

Plaintext


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 — 按照指定格式返回格式化后的日期 。

PHP

echo DateTime::createFromFormat("YmdHisvO", '20231020105244000+0800')->format("Y-m-d H:i:s");

Plaintext

2023-10-20 10:52:44

关于作者 · 持续学习与技术实践

我是一名拥有 15 年以上开发经验的技术从业者,自 2013 年起持续运营个人技术博客,记录工作与个人项目中遇到的真实问题,以及解决问题过程中的探索、实践和思考。

除了技术写作,我也在持续开发和维护自己的独立项目,探索新技术和新工具在实际场景中的应用。我始终相信,没有不值得去解决的问题,也没有不值得去学习的技术。

如果这篇文章对你有所帮助,欢迎浏览博客中的其他文章,也欢迎交流技术经验与想法。

关于我  ·  GitHub  ·  邮件联系