Установка часового пояса по умолчанию не работает, несмотря на то, что часовой пояс действителен - PullRequest
6 голосов
/ 06 января 2012

Я получаю, когда просто выполняю phpinfo ()

Предупреждение: phpinfo (): полагаться на настройки часового пояса системы небезопасно.Вы обязаны использовать настройку date.timezone или функцию date_default_timezone_set ().Если вы использовали какой-либо из этих методов и по-прежнему получаете это предупреждение, вы, скорее всего, неправильно написали идентификатор часового пояса.Мы выбрали «Европа / Хельсинки» для «EET / 2.0 / no DST» вместо этого в /myadmin/i.php в строке 8

, вот i.php:

<?php
//echo date_default_timezone_get();

date_default_timezone_set("Europe/Kiev");

//echo date("l");

phpinfo();
?>

И, как вы можете видеть, когда я делаю date_default_timezone_set ("Europe / Kiev"), я получаю:

Примечание: date_default_timezone_set (): идентификатор часового пояса 'Europe / Kiev' недопустим в / myadmin / i.php в строке 4

Я уверен, что я использую правильную строку часового пояса из здесь , и я установил:

date.часовой пояс = Европа / Киев

в файле php.ini.

Среда: CentOS 6, nginx / 1.1.11, PHP 5.3.8 (fpm-fcgi)

Я действительно не могу понять, в чем дело.Спасибо.

Ответы [ 2 ]

6 голосов
/ 09 января 2012

Благодаря комментариям я смог решить мою проблему. Что я сделал в консоли:

#yum install php-pear

#pecl install timezonedb

Требуется c компилятор:

configure: error: no acceptable C compiler found in $PATH

... так я и сделал:

#yum install gcc

Кроме того, если вы получили ошибку о команде make, просто запустите

#yum install make

Наконец, попробуйте еще раз:

#pecl install timezonedb

... в конце отображается:

You should add "extension=timezonedb.so" to php.ini

Я добавил "extension = timezonedb.so" в /etc/php.ini и перезапустил php-fpm:

#/etc/init.d/php-fpm restart
0 голосов
/ 22 сентября 2013

Чтобы расширить решение futureboxlab, вы можете столкнуться с другой ошибкой, связанной с командой make, если у вас не установлена ​​программа make.В этом случае вам просто нужно запустить

#yum install make

, затем, еще раз (в третий раз заколдовано)

#pecl install timezonedb
...