質問: jfactory::getdate('now', 0); echo $date_zero_offset->torfc822(true); ...異なる出力を提供します:mon, 13 oct 2014 18:31:37 +0000 mon, 13 oct 2014 19:31:41 +0100 両方の日付が同じであるべきではありませんか?他に何を考慮すべきですか?実際の日付は次のとおりです。echo date("r"); // mon, 13 oct 2014 20:40:33 +0200 サーバーがスペインにあるため、正解です(+1 gmtおよび+1夏時間の夏時間)。カナリア諸島の現在の時刻を考慮してモジュールを調整しようとすると問題が発生しました。これはmon, 13 oct 2014 19:31:41 +0100与えられた例に従って。私はjoomlaを使用しています! 2.5.27、サーバーのタイムゾーンはカナリア(gmt + 0)に設定されています。
回答: ファイル_/libraries/joomla/factory.php_を開き、getdate()関数を検索します。_public static function getdate($time = 'now', $tzoffset = null) _タイムゾーンオフセットのデフォルト値(_$tzoffset_)はnullであり、_0_ではありません。 joomlaドキュメント の誤りが原因であるか、2.5より古いバージョンが原因です。joomla 3では、$date_zero_offset = jfactory::getdate('now', 0);はエラーを発生させます: datetime :: __ construct()は、パラメーター2がdatetimezoneであると想定し、整数を指定します したがって、カナリア諸島では、これを使用できます。_$date_zero_offset = jfactory::getdate('now', 'atlantic/canary'); _