В настоящее время я получаю следующее предупреждение STRICT при создании даты и времени UTC с php.
Строгое предупреждение: нецелесообразно полагаться на настройки системного часового пояса. Используйте параметр date.timezone, переменную окружения TZ или функцию date_default_timezone_set(). Если вы использовали какой-либо из этих методов, и вы все еще получаете это предупреждение, скорее всего, вы ошиблись с идентификатором часового пояса. Мы выбрали "UTC" вместо "UTC/0.0/no DST"
Это строка кода, который я использую.
DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), new DateTimeZone('UTC'));
Странная вещь: я уже использую UTC как часовой пояс, но он все еще выводит это предупреждение. Как я могу избавиться от этого?
Я запускаю php 5.6 в Debian Wheezy.
Все мои файлы php.ini содержат следующий параметр date.timezone
.
date.timezone = "Europe\Amsterdam"
Кажется, я пропустил один файл php.ini +, включая исправление (косую черту), как это предложил @Ofir-Baruch, кажется, что он решен.
Я забыл, что php.ini был hhvm.
Это не удалось на консольных линиях, так как я настроил все консольные php для выполнения hhvm с помощью следующей команды.
/usr/bin/update-alternatives --install/usr/bin/php php/usr/bin/hhvm 60
Я забыл об этом и понял это, когда я повторил следующее.
echo phpinfo();
который возвращает Hip Hop
в случае hhvm.
Europe/Amsterdam
(обычная косая черта). Если это не помогло, рассмотрите возможность добавленияdate_default_timezone_set('Europe/Amsterdam');
в этом файле (возможно, файлы php.ini, которые вы редактировали, по какой-то причине игнорируются). Обновите меня, если это помогло.