将 unix 时间戳转换为 Php 中的日期

convert unix timestamp to date in Php

我在发布之前已经在 Whosebug 中提到了问题。 在我的例子中,我需要将 1426023505154 转换为日期 format.To,确保时间戳有效,我在 http://www.epochconverter.com 中检查过。我使用这些代码进行转换。但这不起作用:

date_default_timezone_set('Asia/Calcutta');
$date = new DateTime();
$date->setTimestamp(1426023505154);
echo $date->format('U = Y-m-d H:i:s') ;
echo gmdate("Y-m-d\TH:i:s\Z", 1426023505154);
echo echo date('d-m-Y', 1426023505154);

但所有结果都是错误的,例如:

  1. 47158-11-20 21:49:14

  2. 20-11-47158

  3. 47158-11-20T16:19:14Z

请告诉我如何解决这个问题。 谢谢

试试 -

echo date('Y-m-d H:i:s', 1426023505154 / 1000 );
// dividing by 1000 because the timestamp is in microseconds

问题是您的时间戳以毫秒为单位,而 $date->setTimestamp 使用秒,您可以通过除以 1000 来解决此问题

$date = new DateTime();
$value = 1426023505154;
$date->setTimestamp($value/1000);