PHP Функції фільтра
PHP Фільтр. Інтро
Ці PHP-фільтри використовуються для перевірки та фільтрації даних, що надходять із незахищених джерел, як-от введені користувачем дані.
Інсталяція
Починаючи з PHP 5.2.0, функції фільтрування ввімкнено за замовчуванням. Для використання цих функцій не потрібна установка.
Конфігурації середовища виконання
На поведінку цих функцій впливають налаштування в php.ini:
Назва | Опис | За замовчуванням | Змінний |
---|---|---|---|
filter.default | Відфільтруйте всі дані $_GET, $_POST, $_COOKIE, $_REQUEST і $_SERVER за допомогою цього фільтра. Приймає назву фільтра, який ви хочете використовувати за умовчанням. Перегляньте список фільтрів, щоб переглянути список імен фільтрів | "unsafe_raw" | PHP_INI_PERDIR |
filter.default_flags | Прапорці за замовчуванням, які застосовуються, коли встановлено фільтр за замовчуванням. За замовчуванням встановлено FILTER_FLAG_NO_ENCODE_QUOTES з причин зворотної сумісності | NULL | PHP_INI_PERDIR |
PHP Функції фільтра
Функція | Опис |
---|---|
filter_has_var() | Перевіряє, чи існує змінна вказаного типу введення |
filter_id() | Повертає ідентифікатор фільтра за вказаною назвою фільтра |
filter_input() | Отримує зовнішню змінну (наприклад, із вхідних даних форми) і додатково фільтрує її |
filter_input_array() | Отримує зовнішні змінні (наприклад, із вхідних даних форми) і додатково фільтрує їх |
filter_list() | Повертає список усіх підтримуваних імен фільтрів |
filter_var() | Фільтрує змінну за допомогою вказаного фільтра |
filter_var_array() | Отримує кілька змінних і фільтрує їх |
PHP Попередньо визначені константи фільтрів
Константа | Опис |
---|---|
INPUT_POST | POST змінні |
INPUT_GET | GET змінні |
INPUT_COOKIE | COOKIE змінні |
INPUT_ENV | ENV змінні |
INPUT_SERVER | SERVER змінні |
FILTER_DEFAULT | Нічого не робити, за бажанням видалити/кодувати спеціальні символи. Дорівнює FILTER_UNSAFE_RAW |
FILTER_FLAG_NONE | Не дозволяє прапори |
FILTER_FLAG_ALLOW_OCTAL | Лише для вхідних даних, які починаються з нуля (0) як вісімкові числа. Це дозволяє лише наступні цифри 0-7 |
FILTER_FLAG_ALLOW_HEX | Лише для вхідних даних, які починаються з 0x/0X як шістнадцяткові числа. Це дозволяє лише наступним символам бути a-fA-F0-9 |
FILTER_FLAG_STRIP_LOW | Видалити символи зі значенням ASCII менше 32 |
FILTER_FLAG_STRIP_HIGH | Видаляйте символи зі значенням ASCII більше 127 |
FILTER_FLAG_ENCODE_LOW | Кодуйте символи зі значенням ASCII менше 32 |
FILTER_FLAG_ENCODE_HIGH | Кодуйте символи зі значенням ASCII більше 127 |
FILTER_FLAG_ENCODE_AMP | Закодувати & |
FILTER_FLAG_NO_ENCODE_QUOTES | Не кодувати ' and " |
FILTER_FLAG_EMPTY_STRING_NULL | Не використовується |
FILTER_FLAG_ALLOW_FRACTION | Дозволяє крапку (.) як дробовий роздільник у числах |
FILTER_FLAG_ALLOW_THOUSAND | Дозволяє використовувати кому (,) як роздільник тисяч у числах |
FILTER_FLAG_ALLOW_SCIENTIFIC | Дозволяє e або E для наукового позначення чисел |
FILTER_FLAG_PATH_REQUIRED | URL-адреса має містити частину шляху |
FILTER_FLAG_QUERY_REQUIRED | URL-адреса має містити рядок запиту |
FILTER_FLAG_IPV4 | Дозволяє IP-адресі мати формат IPv4 |
FILTER_FLAG_IPV6 | Дозволяє IP-адресі мати формат IPv6 |
FILTER_FLAG_NO_RES_RANGE | Не проходить перевірку для зарезервованих діапазонів IPv4: 0.0.0.0/8, 169.254.0.0/16, 127.0.0.0/8 і 240.0.0.0/4, а також для зарезервованих діапазонів IPv6: ::1/128, ::/128, ::ffff:0:0/96 та fe80::/10 |
FILTER_FLAG_NO_PRIV_RANGE | Не проходить перевірку для приватних діапазонів IPv4: 10.0.0.0/8, 172.16.0.0/12 і 192.168.0.0/16, а також для адрес IPv6, що починаються з FD або FC |
FILTER_FLAG_EMAIL_UNICODE | Дозволяє локальній частині електронної адреси містити символи Unicode |
FILTER_REQUIRE_SCALAR | Значення має бути скаляром |
FILTER_REQUIRE_ARRAY | Значення має бути масивом |
FILTER_FORCE_ARRAY | Розглядає скалярне значення як масив зі скалярним значенням як єдиний елемент |
FILTER_NULL_ON_FAILURE | Повертає NULL у разі помилки для нерозпізнаних логічних значень |
FILTER_VALIDATE_BOOLEAN | Перевіряє логічне значення |
FILTER_VALIDATE_EMAIL | Перевіряє значення як дійсну адресу електронної пошти |
FILTER_VALIDATE_FLOAT | Перевіряє значення як число float |
FILTER_VALIDATE_INT | Перевіряє значення як ціле число |
FILTER_VALIDATE_IP | Перевіряє значення як IP-адресу |
FILTER_VALIDATE_MAC | Перевіряє значення як MAC-адресу |
FILTER_VALIDATE_REGEXP | Перевіряє значення на регулярний вираз |
FILTER_VALIDATE_URL | Перевіряє значення як URL-адресу |
FILTER_SANITIZE_EMAIL | Видаляє всі неприпустимі символи з адреси електронної пошти |
FILTER_SANITIZE_ENCODED | Видаляє/кодує спеціальні символи |
FILTER_SANITIZE_MAGIC_QUOTES | Застосувати addslashes() |
FILTER_SANITIZE_NUMBER_FLOAT | Видаліть усі символи, крім цифр, знаків +- і за бажанням .,eE |
FILTER_SANITIZE_NUMBER_INT | Видаляє всі символи, крім цифр і знаків + - |
FILTER_SANITIZE_SPECIAL_CHARS | Видаляє спеціальні символи |
FILTER_SANITIZE_STRING | Видаляє теги/спеціальні символи з рядка |
FILTER_SANITIZE_STRIPPED | Псевдонім FILTER_SANITIZE_STRING |
FILTER_SANITIZE_URL | Видаляє всі заборонені символи з URL-адреси |
FILTER_UNSAFE_RAW | Нічого не робити, за бажанням видалити/кодувати спеціальні символи |
FILTER_CALLBACK | Виклик визначеної користувачем функції для фільтрації даних |