PHP: конвертировать часовой пояс временной метки - PullRequest
3 голосов
/ 25 октября 2011

У меня проблемы с преобразованием временной метки, которая является временем в формате UTC, в другой часовой пояс с использованием Zend Framework.Мой часовой пояс по умолчанию - Европа / Париж

$timestamp = 1319530421;
$date = new Zend_Date();
$date->setTimezone('UTC');
$date->set($timestamp, Zend_Date::TIMESTAMP);
echo $date->get(Zend_Date::W3C).' - '.$date->getTimezone().'<br />';
$date->setTimezone('Europe/Paris');
echo $date->get(Zend_Date::W3C).' - '.$date->getTimezone().'<br />';

, который повторяет

2011-10-25T08:13:41+00:00 - UTC
2011-10-25T10:13:41+02:00 - Europe/Paris

, но это неправильно, потому что эта отметка времени

2011-10-25T10:13:41+00:00 - UTC

Что я делаю неправильно?Спасибо

1 Ответ

0 голосов
/ 28 октября 2011

Вы ошибаетесь в отметке времени в своем примере.Это дата:

date_default_timezone_set('UTC');

$timestamp = 1319530421;

echo date('c e', $timestamp); # 2011-10-25T08:13:41+00:00 UTC

Так что с вашим примером все правильно, только ваше ожидание не так.

...