【发布时间】:2012-09-21 09:58:13
【问题描述】:
如果我在 index.php echo date('m/d/Y h:i:s a', time()); 中输出日期/时间。这是正确的。如果我在那之后的任何地方输出日期/时间,例如在扩展中它正好关闭 4 小时。我已经在 php.ini 和 Magento 本身中正确设置了时区,所以不确定是什么导致它关闭。我正在运行版本 1.7.0.2。
编辑
好的,所以我学到了一些东西。
Magento 总是将时区设置为 UTC 应用程序/mage.php
line 767: date_default_timezone_set('UTC')
所以,基本上你不能使用 date()、time() 等。你必须在 Admin->System->Configuration / General->Locale 选项中设置你的目标时区并使用类似的东西:
$now = Mage::getModel('core/date')->timestamp(time());
echo date('m/d/y h:i:s', $now);
我总是可以用我的时区替换第 767 行,但我不喜欢修改核心代码。还有其他选择吗???
【问题讨论】:
标签: magento date time timezone