[Tep-j-general] タイムゾーンの変更(Re: 注文管理のぺーじでの在庫のない商品の処理について)

Back to archive index

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/




Tep-j-general メーリングリストの案内
Back to archive index