我正在尝试将博客时间戳格式转换为毫秒级,以下是我的代码。一旦转换为毫秒,然后我进一步将毫秒转换为日期和时间,但它显示错误的日期和时间
示例代码:
<?php
echo strtotime("2018-02-26T01:52:00-08:00");
?>
输出: 1519638720
示例代码:
$milliseconds = 1519638720;
$seconds = $milliseconds / 1000;
$date = date("d M Y, D", $seconds);
$seconds = $milliseconds / 1000;
$time = date("g:i a", $seconds);
echo $date.", ".$time;
错误的OUPUT: 1970年1月18日,太阳,下午2:07
答案 0 :(得分:0)
你犯的唯一错误是strtotime
返回秒数,所以改进如下:
$seconds = strtotime("2018-02-26T01:52:00-08:00");
$date = date("d M Y, D", $seconds);
$time = date("g:i a", $seconds);
答案 1 :(得分:0)
您在评论中写道:
实际上我需要以毫秒格式存储博客发布日期。
基于此,最好的选择是拥有PHP版本&gt; 7.1(而不是7.1.3,因为它有一个bug,见here),其中微秒
创建新的$now = new DateTime();
对象:
U
要输出带有微秒部分使用格式类型u
和$uSeconds = $now->format('U.u'); //
的时间戳,请参阅here它们是什么。
{{1}}
现在将此数据存储在您的数据库中。
如果您没有PHP&gt; 7.1,请使用microtime(true)
,这将返回带微秒部分的unix时间戳。