2

error_log のタイムゾーンの問題?

php で error_log ディレクティブをファイルに明示的に設定し、タイムゾーンを指定して error_log ステートメントを使用すると、タイムゾーンが尊重されないのはなぜですか? 下記参照:

[soham@soham.dev ~]$ cat errlog.php
<?php

date_default_timezone_set('America/Los_Angeles');
ini_set('error_log', '/tmp/blah');
ini_set('display_errors', 'on');
error_log('whatever');
?>

[soham@soham.dev ~]$ php errlog.php

[soham@soham.dev ~]$ cat /tmp/blah
[12-Aug-2010 02:16:29] whatever

[soham@soham.dev ~]$ date
Wed Aug 11 19:16:34 PDT 2010

[soham@soham.dev ~]$

私が見つけることができる最も近いものはhttp://bugs.php.net/45191ですが、これは 5.2.10 で修正されています。しかし、私は5.2.11を実行しています:

[soham@soham.dev ~]$ php -v
PHP 5.2.11 (cli) (built: Apr 17 2010 16:25:19)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
[soham@soham.dev ~]$

関連する INI 設定 (コードで上書きされています):

[soham@soham.dev ~]$ php -i | grep date.timezone
date.timezone => America/Los_Angeles => America/Los_Angeles

[soham@soham.dev ~]$ php -i | grep error_log
error_log => no value => no value

私は何が欠けていますか?手がかりをいただければ幸いです。ありがとう。

4

1 に答える 1

1

php5.3.3 にアップグレードすると、これが修正されました。中間のバージョン (つまり、5.2.11 と 5.3.3 の間) は試していません。

于 2010-10-12T18:50:20.850 に答える