PHPのタイムゾーンの設定

date()関数などでUnixタイムスタンプを変換する際にはPHPがインストールされているシステム(今回はCentOs)のシステムロケールを参照しているとばかり思っていたが、PHP.iniにもタイムゾーンの設定がある事を今更ながら発見(笑)

phpが利用しているphp.iniが何処にあるか確実な場合はそれを開く。システム上に複数存在してどれを利用しているか明白ではない場合は、phpinfo()でLoaded Configuration Fileのパスを確認。CentOs5.3上のXamppでは/opt/lampp/etc/php.iniとなってます。これを、エディタで開いて[module setting]のdate.timezone タイムゾーンをdate.timezone Asia/Tokyoに変更しApacheを再起動する

ちなみにXampp for Linux の1.7ではデフォルトでdate.timezone Europe/Berlinとなってます。

また、レンタルサーバなどでPHP.iniを編集できないような場合は、PHP5から date_default_timzone_set(str timezone) という関数が利用できる。date_default_timezone_set('Asia/Tokyo')とすれば、日本のロケールに合わせた日付時刻表示が可能になります

コメント

このブログの人気の投稿

「大学という名のモンスター」 - 沖縄科学技術大学院大学 - OIST -

Les Miserable - レ・ミゼラブル