Filtres de Sanitisation
PHP Manual
PHP Manual»Constantes pré-définies»Filtres de Sanitisation

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

FILTER_UNSAFE_RAW (int)

Ce filtre ne fait rien.

Cependant, il peut supprimer ou encoder des caractères spéciaux s'il est utilisé avec les indicateurs de filtrage de nettoyage FILTER_FLAG_STRIP_* et FILTER_FLAG_ENCODE_*.

FILTER_DEFAULT (int)

Alias de FILTER_UNSAFE_RAW.

FILTER_SANITIZE_STRING (int)

Ce filtre supprime les balises et encode en HTML les guillemets doubles et simples.

Optionnellement, il peut supprimer ou encoder des caractères spécifiés s'il est utilisé avec les filtres de sanitation FILTER_FLAG_STRIP_* et FILTER_FLAG_ENCODE_*.

Le comportement d'encodage des guillemets peut être désactivé en utilisant le filtre FILTER_FLAG_NO_ENCODE_QUOTES.

Avertissement

Obsolète à partir de PHP 8.1.0, il convient d'utiliser htmlspecialchars() à la place.

Avertissement

La manière dont ce filtre supprime les balises n'est pas équivalente à celle de strip_tags().

FILTER_SANITIZE_STRIPPED (int)

Alias de FILTER_SANITIZE_STRING.

Avertissement

Obsolète à partir de PHP 8.1.0, il convient d'utiliser htmlspecialchars() à la place.

FILTER_SANITIZE_ENCODED (int)

Ce filtre effectue un encodage URL d'une chaîne.

Il peut éventuellement supprimer ou encoder des caractères spécifiés s'il est utilisé avec les filtres de sanitation FILTER_FLAG_STRIP_* et FILTER_FLAG_ENCODE_*.

FILTER_SANITIZE_SPECIAL_CHARS (int)

Ce filtre effectue un encodage HTML sur ', ", <, >, & et sur les caractères ayant une valeur ASCII inférieure à 32. Contrairement au filtre FILTER_SANITIZE_FULL_SPECIAL_CHARS, le filtre FILTER_SANITIZE_SPECIAL_CHARS ignore l’indicateur FILTER_FLAG_NO_ENCODE_QUOTES.

En option, il peut supprimer des caractères spécifiés s'il est utilisé avec les filtres de sanitation FILTER_FLAG_STRIP_*, et il peut encoder les caractères dont la valeur ASCII est supérieure à 127 en utilisant FILTER_FLAG_ENCODE_HIGH.

FILTER_SANITIZE_FULL_SPECIAL_CHARS (int)

Ce filtre équivaut à appeler htmlspecialchars() avec ENT_QUOTES activé.

Le comportement d'encodage des guillemets peut être désactivé en utilisant le filtre FILTER_FLAG_NO_ENCODE_QUOTES.

Avertissement

Comme htmlspecialchars(), ce filtre tient compte du paramètre default_charset dans le fichier INI. Si une séquence d'octets qui forme un caractère invalide dans le jeu de caractères actuel est détectée, toute la chaîne est rejetée, ce qui entraîne le retour d'une chaîne vide.

FILTER_SANITIZE_EMAIL (int)

Assainit la chaîne en supprimant tous les caractères sauf les lettres latines ([a-zA-Z]), les chiffres ([0-9]), et les caractères spéciaux !#$%&'*+-=?^_`{|}~@.[].

FILTER_SANITIZE_URL (int)

Assainit la chaîne en supprimant tous les caractères sauf les lettres latines ([a-zA-Z]), les chiffres ([0-9]), et les caractères spéciaux $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=.

FILTER_SANITIZE_NUMBER_INT (int)

Assainit la chaîne en supprimant tous les caractères sauf les chiffres ([0-9]), le signe plus (+), et le signe moins (-).

FILTER_SANITIZE_NUMBER_FLOAT (int)

Assainit la chaîne en supprimant tous les caractères sauf les chiffres ([0-9]), le signe plus (+) et le signe moins (-).

Options facultatives
FILTER_FLAG_ALLOW_FRACTION (int)

Accepter le caractère point (.), qui représente habituellement le séparateur entre les parties entière et fractionnaire.

FILTER_FLAG_ALLOW_THOUSAND (int)

Accepter le caractère virgule (,), qui représente habituellement le séparateur de milliers.

FILTER_FLAG_ALLOW_SCIENTIFIC (int)

Accepter les nombres en notation scientifique en autorisant les caractères e et E.

Avertissement

Si le filtre FILTER_FLAG_ALLOW_FRACTION n'est pas utilisé, le séparateur décimal est supprimé, modifiant ainsi la valeur reçue.

<?php
$number = '12.34';

var_dump(filter_var($number, FILTER_SANITIZE_NUMBER_FLOAT));
var_dump(filter_var($number, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION));
?>

L'exemple ci-dessus va afficher :

string(4) "1234"
string(5) "12.34"
FILTER_SANITIZE_ADD_SLASHES (int)

Appliquer addslashes() à l'entrée. Disponible à partir de PHP 7.3.0.

FILTER_SANITIZE_MAGIC_QUOTES (int)

Alias de FILTER_SANITIZE_ADD_SLASHES.

Avertissement

OBSOLÈTE à partir de PHP 7.3.0 et SUPPRIMÉ à partir de PHP 8.0.0.

To Top