(PHP 5 >= 5.2.0, PHP 7, PHP 8)
filter_input — Получает конкретную внешнюю переменную по имени и, если нужно, фильтрует значение переменной
typeINPUT_*.
Содержимое фильтруемых суперглобальных переменных – это исходное «сырое» содержимое, предоставленное SAPI, до внесения пользователем каких-либо изменений в суперглобальные переменные. Для фильтрации изменённого суперглобального содержимого используйте функцию filter_var().
var_nametype) суперглобальных переменных.
filterFILTER_VALIDATE_*,
фильтром очистки с помощью одной из констант FILTER_SANITIZE_*,
FILTER_UNSAFE_RAW или пользовательским фильтром с помощью константы FILTER_CALLBACK.
Замечание: По умолчанию используется
FILTER_DEFAULT, который является псевдонимомFILTER_UNSAFE_RAW. В результате по умолчанию фильтрация не производится.
optionsFILTER_FLAG_*.
Если параметр filter принимает опции,
флаги могут быть предоставлены с помощью значения массива "flags".
В случае успешного выполнения функция возвращает отфильтрованную переменную.
Если переменная не установлена, возвращается значение false.
В случае возникновения ошибки возвращается значение false,
только не используется флаг FILTER_NULL_ON_FAILURE,
в этом случае возвращается значение null.
Пример #1 Пример использования функции filter_input()
<?php
$search_html = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_SPECIAL_CHARS);
$search_url = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_ENCODED);
echo "Вы искали $search_html.\n";
echo "<a href='?search=$search_url'>Искать снова.</a>";
?>Вывод приведённого примера будет похож на:
Вы искали Me & son. <a href='?search=Me%20%26%20son'>Искать снова.</a>
FILTER_VALIDATE_*
FILTER_SANITIZE_*