TAMURA Toshihiko
tamur****@bitsc*****
2003年 6月 23日 (月) 14:15:29 JST
田村です。 > この件なんですが、私の説明不足でした。日本の日付でなくアメリカの日付が出る > というのは 月日の文字のことでなくて、タイムゾーンがアメリカになってるんで > す。 サーバの状態によって、何通りかの方法があります。 ●サーバの管理画面からタイムゾーンの設定ができる場合 ユーザごとにタイムゾーンの設定ができる共用サーバもあるようです。 この場合は、タイムゾーンをセットすれば、時刻/日付表示も変更されます。 ●PHPで環境変数(TZ)が変更可能な場合 PHPがSafe Modeで動いている場合は、ユーザが設定できる環境変数に制限が あるので、環境変数(TZ)が変更できないようです(php.iniの設定によります)。 環境変数(TZ)が変更できるなら、 catalog/includes/application_top.php に以下のような行を挿入して、 タイムゾーンを設定します。 putenv("TZ=Asia/Tokyo"); ●コードを変更して時刻/日付表示をずらす 上の方法がとれない場合には、コードを編集して、時刻表示にオフセットを 加える方法があります。 (例) catalog/includes/footer.php (21行目) strftime(DATE_FORMAT_LONG); を以下のように変更します。 ↓ strftime(DATE_FORMAT_LONG, time() + 9 * 3600); 例えばサーバがアメリカ東部のタイムゾーンにセットされているなら、 GMT-5.0 東部標準時 GMT+9.0 東京 なので、 strftime(DATE_FORMAT_LONG, time() + 14 * 3600); とすればいいのでは。 -- 田村敏彦 / 株式会社ビットスコープ E-mail:tamur****@bitsc***** http://www.bitscope.co.jp/