Zend_Date使用Z而不是ISO 8601的+00:00


Zend_Date use Z instead of +00:00 for ISO 8601

Zend_Date返回+00:00而不是Z:

$date = $order->getCreatedAtStoreDate();
$date->setTimezone('UTC');
$date->toString(Zend_Date::ISO_8601)
// Returns: 2011-07-21T15:18:36+00:00

想要的:2011 - 07 - 21 t15:18:36z

无论如何我可以使Zend_Date使用Z?

我有一个变通的str_replace('+00:00', 'Z', $date->toString(Zend_Date::ISO_8601)),但我不喜欢。

因为它是一个有效的ISO 8601实现,没有其他日期常量会得到你想要的,你可能应该使用你自己的格式化字符串:$date->toString('Y-m-d'TH:i:s'Z');

请注意,只有当您首先将时区设置为UTC时,这才是正确的行为,因此您可能需要在快速帮助器中将它们包装在一起。