Может ли кто-нибудь сказать мне, почему я получаю эту ошибку при запуске приложения / консоли в совершенно новом отформатированном macbook с последним установленным MAMP?
Предупреждение: date_default_timezone_get (): Нельзя полагаться на настройки часового пояса системы. Вы * обязательны для использования параметра date.timezone или функции date_default_timezone_set (). Если вы использовали какой-либо из этих методов, и вы все еще получаете это предупреждение, скорее всего, вы ошиблись с идентификатором часового пояса. Мы выбрали «Европа / Хельсинки» для «EEST / 3.0 / DST» вместо этого в строке /../Logger.php 112
- PHP и MySQL: преобразование сохраненного TIMESTAMP в локальный часовой пояс пользователя
- MySQL: сохранить часовой пояс сервера или часовой пояс пользователя?
- Как я могу получить часовой пояс локального сервера?
- Как узнать, соблюдает ли часовой пояс летнее время в любое время года?
- php's date_default_timezone_set настраивается на переход на летнее время?
Я проверил путь php.ini и отметил date.timezone = "Europe/Athens"
Также перезапущен MAMP / apache несколько раз.
По умолчанию php.ini
в OS X находится по адресу:
/private/etc/php.ini
В любом случае, вы можете либо сообщить CLI php, чтобы загрузить настройки MAMP , либо использовать псевдоним самой команды MAMP .
В AppKernel.php пишите:
public function init() { date_default_timezone_set( 'Europe/Lisbon' ); parent::init(); }
Поскольку init()
устарел (и будет удален в Symfony2 3.0), рекомендуется переместить код в конструкторе, как показано в следующем примере:
public function __construct($environment, $debug) { parent::__construct($environment, $debug); // get rid of Warning: date_default_timezone_get(): It is not safe to rely on the system's timezone date_default_timezone_set( 'Europe/Paris' ); }
Вы не отредактируете хороший файл php.ini
Вы можете получить полный phpinfo (), используя:
php -i
И там есть файл php.ini:
$ php -i | grep 'Configuration File' Configuration File (php.ini) Path => /etc Loaded Configuration File => /etc/php.ini
У меня была та же проблема, и это правда, что в Yosemite есть командная строка, а также служба MAMP / Native Mac PHP, и, хотя я пытался следовать указаниям на этой странице, они не работали для меня.
Когда я запустил команду php:
$ php -i | grep 'Configuration File'<br> Configuration File (php.ini) Path => /etc<br> Loaded Configuration File => <em>(Blank)</em>
Я понял, что php.ini, который использовал CLI, был фактически файлом php.ini.default. Я создал символическую ссылку на этот файл как php.ini, и все сработало.
My-MacPro: / etc / $ ln -s php.ini.default php.ini
Я выполнил ваши ответы, но в моем случае никто из них не работал. Я решил пойти изменить date_default_timezone_get()
в файле logger.php .
Я заменил свой часовой пояс («Европа / Берлин»), и все прошло хорошо!
Старое школьное решение, но все-таки решение.
Ваш php.in по умолчанию в Mac OSX находится в /etc/php.ini
который точно такой же, как файл /private/etc/php.ini
.
Вы должны знать, что у вас есть возможность использования двух версий PHP, работающих параллельно. У меня была эта проблема, потому что я использовал собственный mac osx php, однако мне пришлось установить пакет php через homebrew, после чего я получил другую версию php через homebrew. хотя в моем файле php.ini
файле /etc/php.ini
, у меня все еще была такая же проблема, поэтому я запускаю:
php -i | grep 'Configuration File'
чтобы настроить правильный файл, поэтому я получил:
Configuration File (php.ini) Path => /usr/local/etc/php/5.3 Loaded Configuration File => /usr/local/etc/php/5.3/php.ini PHP Warning: Unknown: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Buenos_Aires' for 'ART/-3.0/no DST' instead in Unknown on line 0
Тогда я знал, что мне нужно отредактировать файл /usr/local/etc/php/5.3/php.ini
.
После этого все прошло правильно. У меня уже не было этой проблемы.
Надеюсь, это поможет вам решить это.
У меня была такая же проблема с моей установкой SF2.
Чтобы исправить это, просто зайдите в файл php.ini
в /etc/php.ini
и измените свой файл так, чтобы он выглядел так (настройте часовой пояс в соответствии с местным /etc/php.ini
):
;;;;;;;;;;;;;;;;;;; ; Module Settings ; ;;;;;;;;;;;;;;;;;;; [Date] ; Defines the default timezone used by the date functions ; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone date.timezone = Europe/London
Обычно для CLI и Apache существуют отдельные файлы php.ini
. Убедитесь, что вы отредактировали необходимый.
По умолчанию Mac использует в консоли PHP, расположенный по адресу:
/private/etc/php.ini
Вы должны использовать это, потому что MAMP всегда отключает переменную часового пояса, и вы всегда будете получать эту ошибку.
У меня была аналогичная проблема для OS X 10.9. Проблема в моем случае заключалась в отсутствии файла php.ini
в /etc
Я решил проблему, создав файл php.ini
с содержимым:
date.timezone = Europe/Athens