我在使用Zend框架将时间戳(UTC日期时间)转换为另一个时区时遇到问题。我的默认时区是欧洲/巴黎
$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
我做错了什么?由于
示例中的时间戳是错误的。它的日期是:
date_default_timezone_set('UTC');
$timestamp = 1319530421;
echo date('c e', $timestamp); # 2011-10-25T08:13:41+00:00 UTC
所以你的例子都是正确的,只是你的期望不是。