如果我在 index.php 中输出日期/时间echo date('m/d/Y h:i:s a', time());
。这是正确的。如果我在那之后的任何地方输出日期/时间,例如在扩展中它正好关闭 4 小时。我已经在 php.ini 和 Magento 本身中正确设置了时区,所以不确定是什么导致它关闭。我正在运行版本 1.7.0.2。
编辑
好的,所以我学到了一些东西。
Magento 总是在 app/mage.php 中将时区设置为 UTC
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 行,但我不喜欢修改核心代码。还有其他选择吗???