gpt4 book ai didi

php - 如何在 php 中将/Date(1490914800000+0100)/格式的日期转换为 mysql 日期时间格式?

转载 作者:行者123 更新时间:2023-11-29 03:59:50 25 4
gpt4 key购买 nike

我试图通过提取数字部分然后使用日期函数解析它来解决它。但它向我显示了一些我认为不正确的旧日期。

$datef = "1490914800000+0100";
$adada = date('Y-m-d H:i:s', $datef);
// Gives date 1987-10-13 18:31:28 which is an old date. Please suggest.

最佳答案

this SO question 详细介绍了一种方法, 是使用DateTime() 函数将自纪元以来的秒数转换为日期,然后使用format() 显示此日期。但是您的数据有两个警告。首先,自纪元以来您似乎有毫秒数,需要将其转换为秒数。其次,您还有一个时区转换,以小时为单位,标记到最后。我将你的 $datef 字符串分成两部分,纪元和时区,然后得出自纪元以来的秒数。

list($epoch, $timezone) = explode('+', $datef);

$epoch = ($epoch / 1000) + (substr($timezone, 0, 2)*60*60) +
(substr($timezone, 2, 2)*60);
$dt = new DateTime("@$epoch");
echo $dt->format('Y-m-d H:i:s');

输出:

2017-03-31 00:00:00

此处演示:

PHP Sandbox

关于php - 如何在 php 中将/Date(1490914800000+0100)/格式的日期转换为 mysql 日期时间格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41866737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com