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()などを使用することはできません。[管理]->[システム]->[構成]/[一般]->[ロケール]オプションでターゲットのタイムゾーンを設定し、次のようなものを使用する必要があります。
$now = Mage::getModel('core/date')->timestamp(time());
echo date('m/d/y h:i:s', $now);
767行目を自分のタイムゾーンにいつでも置き換えることができますが、コアコードを変更するのは好きではありません。そこに他のオプションはありますか?