2016-04-14 4 views
0

Я использую symfony3 и я хочу использовать PHPUnitdate.timezone php.ini не установлен

Я использую MAMP, и я создал псевдоним, чтобы использовать его PHP

мой PHP версия 5.6.10

which php 
php: aliased to /Applications/MAMP/bin/php/php5.6.10/bin/php 

с php --ini у меня есть этот результат

Configuration File (php.ini) Path: /Applications/MAMP/bin/php/php5.6.10/conf 
Loaded Configuration File:   /Applications/MAMP/bin/php/php5.6.10/conf/php.ini 
Scan for additional .ini files in: (none) 
Additional .ini files parsed:  (none) 

в /Applications/MAMP/bin/php/php5.6.10/conf/php.ini Я установил

date.timezone = "Europe/Rome" 

Я модифицировал также php.ini из MAMP с тем же значением

, когда я использую PHPUnit

1) Тесты \ AppBundle \ Controller \ DefaultControllerTest :: testIndex date_default_timezone_get(): Нельзя полагаться на настройки часового пояса системы. Вам необходимо указать , чтобы использовать параметр date.timezone или функцию date_default_timezone_set(). Если вы использовали какой-либо из этих методов, и вы все еще получаете это предупреждение, скорее всего, вы ошиблись с идентификатором часового пояса. На данный момент мы выбрали часовой пояс «UTC», но, пожалуйста, установите date.timezone, чтобы выбрать часовой пояс.

В моей phpinfo() У меня есть

Директива Local Value Master Value

date.timezone Европа/Рим Европа/Рим

ответ

1

В AppKernel вы можете установить default_timezone как это

public function boot() { 
    date_default_timezone_set('Europe/Rome'); 
    return parent::boot(); 
} 
+0

Я вижу, что большинство ответов добавляет '__construct' вместо' boot', например http://stackoverflow.com/a/29152788/276648. Любая разница? – user276648

1

Ваш phpinfo() говорит, что «Европа/Рим» установлен, поэтому, я думаю, вы уже перезапустили веб-сервер?

Я всегда устанавливал его с помощью функции date_default_timezone_set("Europe/Rome"); в верхней части файла PHP, который всегда загружается.

+0

Да. Я перезапустил MAMP (веб-сервер), даже я думаю, что phpunit использует cli php. В любом случае у меня такая же проблема. Мне не нравится использовать 'date_default_timezone_set()' в php-файле – monkeyUser

+0

** EDIT: извините, что не было никаких дополнительных файлов conf ** Проверьте наличие каких-либо дополнительных файлов конфигурации «conf.d» ? Я думаю, что 'phpinfo()' также дает вам дополнительные файлы ini, которые также загружаются – MDijkstra

+0

спасибо за ваш ответ. В phpinfo() я могу видеть 'Дополнительные .ini-файлы parsed \t => (none)' – monkeyUser

Смежные вопросы