3


2

Fedora + Zend Server CEでのPHPデフォルトタイムゾーンの問題

Fedora VMにZendServer CE(PHP 5.2)をインストールし、システムのタイムゾーンを「America / Chicago」に設定しています。 php.iniファイルにdate.timezone = 'UTC’があり、date_default_timezone_get()を呼び出すか、Webページにdate( 'T')を表示すると、 'CDT’と表示されます。

date_default_timezone_get()のphp.netのドキュメントには、デフォルトのタイムゾーンを選択するときにこの順序に従うと書かれています。

 - Reading the timezone set using the
   date_default_timezone_set() function
   (if any)
 - Reading the TZ environment variable
   (if non empty)
 - Reading the value of the
   date.timezone ini option (if set)
 - Querying the host operating system
   (if supported and allowed by the OS)

'setup' GUIを使用してシステムタイムゾーンを変更し、サーバーを再起動すると、php.iniの内容に関係なく、date( 'T')はシステムタイムゾーンを変更したものを返します。 TZ環境変数もありません。現在、コードのどこでもdate_default_timezone_set()を使用していません。

何が起こっている可能性がありますか何か考え? date_default_timezone_set( 'UTC')を呼び出すことで、システムのタイムゾーンをいつでもオーバーライドできることを認識していますが、可能であればphp.iniファイルに依存します。

助けてくれてありがとう、

Dave

1 Answer


1


TZは設定されていると思いますが、設定されていないと思います。 TZをよりよく理解するには、このチュートリアルを確認してください。

また、ユーザーの.bashrcの内容を確認してください