Filtros de Sanitize (Limpeza)

Lista de filtros para sanitização (Limpeza)
IDNomeFlagsDescrição
FILTER_SANITIZE_EMAIL"email"  Remova todos os caracteres, exceto letras, dígitos e !#$%&'*+-=?^_`{|}~@.[].
FILTER_SANITIZE_ENCODED"encoded"FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_STRIP_BACKTICK, FILTER_FLAG_ENCODE_LOW, FILTER_FLAG_ENCODE_HIGHURL-encode string, opcionalmente tira ou codifica caracteres especiais.
FILTER_SANITIZE_MAGIC_QUOTES"magic_quotes"  Aplica addslashes() (DESCONTINUADO no PHP 7.3.0 e REMOVIDO no PHP 8.0.0, utilize FILTER_SANITIZE_ADD_SLASHES).
FILTER_SANITIZE_ADD_SLASHES"add_slashes" Aplica addslashes(). (A partir do PHP 7.3.0)
FILTER_SANITIZE_NUMBER_FLOAT"number_float"FILTER_FLAG_ALLOW_FRACTION, FILTER_FLAG_ALLOW_THOUSAND, FILTER_FLAG_ALLOW_SCIENTIFIC Remove todos os caracteres, exceto dígitos, +- e opcionalmente .,eE.
FILTER_SANITIZE_NUMBER_INT"number_int"  Remove todos os caracteres, exceto os dígitos, sinal de mais e menos.
FILTER_SANITIZE_SPECIAL_CHARS"special_chars"FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_STRIP_BACKTICK, FILTER_FLAG_ENCODE_HIGH Codifica em HTML '"<>& e caracteres com valor ASCII menor que 32, opcionalmente, tira ou codifica outros caracteres especiais.
FILTER_SANITIZE_FULL_SPECIAL_CHARS"full_special_chars"FILTER_FLAG_NO_ENCODE_QUOTES Equivalente a chamar htmlspecialchars() junto com ENT_QUOTES. Citações de codificação podem ser desabilitadas FILTER_FLAG_NO_ENCODE_QUOTES. Como htmlspecialchars(), este filtro está ciente do default_charset e se uma sequência de bytes for detectada cria um caractere inválido no conjunto de caracteres atual e, em seguida, a cadeia inteira é rejeitada, resultando em uma cadeia de caracteres de comprimento igual a 0. Ao usar esse filtro como um filtro padrão, consulte o aviso abaixo sobre como definir os sinalizadores padrão como 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 Remove tags e codifica aspas duplas e simples no estilo HTML, opcionalmente remove ou codifica caracteres HTML especiais. Codificar aspas pode ser desligado ao ativar FILTER_FLAG_NO_ENCODE_QUOTES (Descontinuado desde o PHP 8.1.0, utilize htmlspecialchars()).
FILTER_SANITIZE_STRIPPED"stripped"  Alias do filtro "string" (Descontinuado desde o PHP 8.1.0, utilize htmlspecialchars()).
FILTER_SANITIZE_URL"url"  Remove todos os caracteres, exceto letras, dígitos e $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=.
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 Não faz nada, opcionalmente descasque ou codifique caracteres especiais. este filtro também é alias do FILTER_DEFAULT.
Aviso

Ao usar um desses filtros como um filtro padrão através do seu arquivo ini ou através da configuração do seu servidor web, os sinalizadores padrão são definidos para FILTER_FLAG_NO_ENCODE_QUOTES. Você precisa definir explicitamente filter.default_flags para 0 ter aspas codificadas por padrão. Assim:

Exemplo #1 Configurando o filtro padrão para agir como htmlspecialchars

filter.default = full_special_chars
filter.default_flags = 0

Registro de Alterações

VersãoDescrição
8.1.0FILTER_SANITIZE_STRING e FILTER_SANITIZE_STRIPPED foram descontinuadas.
8.0.0FILTER_SANITIZE_MAGIC_QUOTES foi removido.
7.3.0FILTER_SANITIZE_ADD_SLASHES foi adicionado como substitutivo de FILTER_SANITIZE_MAGIC_QUOTES
7.3.0FILTER_SANITIZE_MAGIC_QUOTES foi descontinuado.
To Top