функция date () timestamp возвращает неверную дату

Когда я даю аргумент timestamp php date (), возвращается неверная дата. Форматирование правильное, однако результат не такой, как ожидалось.

Источник: Hubspot JSON.

public 'publish_date' => int 1438079400000

$feed = (object) $this->json;
$string = '';

if( $feed->total_count > 0):
foreach( $feed->objects as $item ):
$item = (object) $item;
date_default_timezone_set('Europe/London');
ob_start();

?>
<?php echo date( 'l jS F Y', $item->publish_date ); ?>
<?php

$string .= ob_get_clean();

endforeach;
endif;

return $string;

Результаты в Воскресенье 14 апреля 47546

Проверка преобразователя эпох говорит, что отметка времени Четверг, 30 июля 2015 г. 09:30:00 по Гринвичу

Использование date () без метки времени возвращает правильную дату на сегодня.

1

Решение

Вам нужно разделить дату на 1000.

1438079400000 -> 14380794000

php > echo date('Y-m-d H:i:s', 1438079400000);
47540-12-03 12:00:00
php > echo date('Y-m-d H:i:s', 1438079400);
2015-07-28 11:30:00
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]