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

时间:2015-05-06 04:28:26

标签: php zend-framework2 unix-timestamp

我在发布之前已经在stackoverflow中提到了这些问题。 在我的情况下,我需要将1426023505154转换为日期格式。为了确保时间戳有效我在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
  4. 请让我知道如何解决这个问题。 感谢

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:0)

尝试 -

echo date('Y-m-d H:i:s', 1426023505154);