Очищающие фильтры
Идентификатор | Имя | Флаги | Описание |
---|---|---|---|
FILTER_SANITIZE_EMAIL |
"email" |
Удаляет все символы, кроме букв, цифр и
!#$%&'*+-=?^_`{|}~@.[] .
|
|
FILTER_SANITIZE_ENCODED |
"encoded" |
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_STRIP_BACKTICK ,
FILTER_FLAG_ENCODE_LOW ,
FILTER_FLAG_ENCODE_HIGH
|
Кодирует строку в формат URL, при необходимости удаляет или кодирует специальные символы. |
FILTER_SANITIZE_MAGIC_QUOTES |
"magic_quotes" | Применяется функция addslashes(). | |
FILTER_SANITIZE_NUMBER_FLOAT |
"number_float" |
FILTER_FLAG_ALLOW_FRACTION ,
FILTER_FLAG_ALLOW_THOUSAND ,
FILTER_FLAG_ALLOW_SCIENTIFIC
|
Удаляет все символы, кроме цифр, +- и, при необходимости,
.,eE .
|
FILTER_SANITIZE_NUMBER_INT |
"number_int" | Удаляет все символы, кроме цифр и знаков плюса и минуса. | |
FILTER_SANITIZE_SPECIAL_CHARS |
"special_chars" |
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_STRIP_BACKTICK ,
FILTER_FLAG_ENCODE_HIGH
|
Экранирует HTML-символы '"<>& и символы с
ASCII-кодом, меньшим 32, при необходимости удаляет или кодирует остальные специальные символы.
|
FILTER_SANITIZE_FULL_SPECIAL_CHARS |
"full_special_chars" |
FILTER_FLAG_NO_ENCODE_QUOTES ,
|
Эквивалентно вызову htmlspecialchars() с установленным
параметром ENT_QUOTES . Кодирование кавычек может быть
отключено с помощью установки флага FILTER_FLAG_NO_ENCODE_QUOTES .
Аналогично htmlspecialchars(), этот фильтр принимает во внимание
default_charset и, если будет обнаружена
некорректная последовательность байт для данной кодировки, то вся строка будет
признана негодной и результатом будет строка нулевой длины. При использовании этого
фильтра в качестве фильтра по умолчанию, ознакомьтесь с предупреждением ниже об
установке флагов по умолчанию в 0.
|
FILTER_SANITIZE_STRING |
"string" |
FILTER_FLAG_NO_ENCODE_QUOTES ,
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_STRIP_BACKTICK ,
FILTER_FLAG_ENCODE_LOW ,
FILTER_FLAG_ENCODE_HIGH ,
FILTER_FLAG_ENCODE_AMP
|
Удаляет теги, при необходимости удаляет или кодирует специальные символы. |
FILTER_SANITIZE_STRIPPED |
"stripped" | Псевдоним фильтра "string". | |
FILTER_SANITIZE_URL |
"url" |
Удаляет все символы, кроме букв, цифр и
$-_.+!*'(),{}|\\^~[]`<>#%";/?:@&= .
|
|
FILTER_UNSAFE_RAW |
"unsafe_raw" |
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_STRIP_BACKTICK ,
FILTER_FLAG_ENCODE_LOW ,
FILTER_FLAG_ENCODE_HIGH ,
FILTER_FLAG_ENCODE_AMP
|
Бездействует, при необходимости удаляет или кодирует специальные символы.
Этот фильтр является псевдонимом FILTER_DEFAULT . |
Внимание
При использовании одного из этих фильтров в качестве фильтра по умолчанию либо через
ваш ini-файл, либо через конфигурацию веб-сервера, флаги по умолчанию установлены в
значение FILTER_FLAG_NO_ENCODE_QUOTES
. Вам необходимо явно
установить параметру filter.default_flags значение 0 для наличия пустых кавычек по
умолчанию. К примеру:
Пример #1 Настройка фильтра по умолчанию для работы аналогично функции htmlspecialchars
filter.default = full_special_chars
filter.default_flags = 0
Список изменений
Версия | Описание |
---|---|
5.2.11/5.3.1 |
Слеши (/ ) удаляются FILTER_SANITIZE_EMAIL .
Ранее они сохранялись.
|