PHP error_log не соответствует настройке часового пояса?

Проблема с часовым поясом в error_log?

Если я явно устанавливаю директиву error_log для файла в php, а затем использую оператор 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

Что мне не хватает? Любые подсказки приветствуются. Благодарю.

1 ответ

Обновление до php5.3.3 исправило это. Не пробовал промежуточные версии (т.е. между 5.2.11 и 5.3.3).

Другие вопросы по тегам