Задать вопрос
@defmin

Почему INPUT_ENV — null?

$_ENV['TEST'] = 'Да тута я, тута!';

var_dump($_ENV['TEST'], filter_input(INPUT_ENV, 'TEST')); // string 'Да тута я, тута!' (length=27), null


Почему - null: при использовании filter_input(INPUT_ENV, 'TEST')?
  • Вопрос задан
  • 156 просмотров
Подписаться 1 Простой 7 комментариев
Решения вопроса 1
Vamp
@Vamp
Чтобы filter_input заработал вместе с INPUT_ENV, нужно в php.ini опцию variables_order добавить букву E

Советую вместо filter_input брать данные из суперглобального массива $_ENV, а затем фильтровать через filter_var, так как у filter_input есть баг, что не во всех окружениях он работает корректно и всё равно возвращает null. Плюс поведение не соответствует документации - функция возвращает null для несуществующих переменных, хотя согласно документации должна возвращать false.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
А не читали предупреждение про INPUT_* в описании параметров filter_input(), не?
https://www.php.net/manual/ru/function.filter-input.php
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы