Les filtres de PHP validation et netoyage des données

PHP cours tutorial

Introduction : filtre de PHP

Cette extension filtre les données soit en les validant, soit en les nettoyant. C'est particulièrement utile lorsque les sources contiennent des données inconnues et peu sûres, comme les données utilisateurs. Par exemple, les données pourraient provenir d'un formulaire HTML.
Il y a deux moyens de filtre : la validation et le nettoyage.


La Validation sert à vérifier si une données passe certains critères.
Par exemple, passer les critères de FILTER_VALIDATE_EMAIL va déterminer si une donnée est une adresse courriel valide, mais sans modifier la donnée elle-même.

Le nettoyage va nettoyer les données.
Par exemple en retirant les caractères indésirables.
Par exemple, passer une donnée à FILTER_SANITIZE_EMAIL va faire disparaître les caractères inappropriés dans une adresse courriel.
Mais, la donnée n'est pas validée.


Filters du PHP

Les tableaux listent une référence complète des filtres en PHP.

Liste des filtres de nettoyage

Nom de l'ID Description
FILTER_SANITIZE_STRING Supprime les balises, et supprime ou encode les caractères spéciaux.
FILTER_SANITIZE_STRIPPED Alias du filtre "string".
FILTER_SANITIZE_ENCODED Applique l'encodage URL, et supprime ou encode les caractères spéciaux.
FILTER_SANITIZE_SPECIAL_CHARS Transforme en entité HTML les caractères '"<>& et les caractères ASCII de valeur inférieur à 32, et supprime ou encode les autres caractères spéciaux.
FILTER_SANITIZE_EMAIL Supprime tous les caractères, excepté des lettres, des chiffres et ! # $ % & ' * + - / = ? ^ _ ` { | } ~ @ . []
FILTER_SANITIZE_URL Supprime tous les caractères sauf les lettres, chiffres et $ - _ . + ! * ' ( ) , { } | \\ ^ ~ [] ` <> # % " ; / ? : @ & =
FILTER_SANITIZE_NUMBER_INT Supprime tous les caractères sauf les chiffres, et les signes plus et moins.
FILTER_SANITIZE_NUMBER_FLOAT Supprime tous les caractères, sauf les chiffres, +- et éventuellement .,eE
FILTER_SANITIZE_MAGIC_QUOTES Applique addslashes().
FILTER_UNSAFE_RAW Ne fait rien, supprime ou encode les caractères spéciaux.

Liste des filtres de validation

Nom de l'ID Description
FILTER_VALIDATE_BOOLEAN Retourne TRUE pour "1", "true", "on" et "yes". Retourne FALSE dans les autres cas.
Si FILTER_NULL_ON_FAILURE est active, FALSE n'est retourné que pour les valeurs "0", "false", "off", "no", "", et NULL est retourné pour les valeurs non-booléennes.
FILTER_VALIDATE_INT Valide un entier, éventuellement dans un intervalle donné.
FILTER_VALIDATE_FLOAT Valide un nombre décimal (float).
FILTER_VALIDATE_REGEXP Valide une valeur avec une expression rationnelle regexp, compatible Perl
FILTER_VALIDATE_URL Valide une URL , éventuellement avec des composants requis.
Cette fonction ne trouvera que des URLs ASCII valides, les domaines internationnalisés (contenant des caractères non-ASCII) ne fonctionneront pas.
FILTER_VALIDATE_EMAIL Valide la valeur comme une adresse courriel (email).
FILTER_VALIDATE_IP Valide une adresse IP, éventuellement IPv4 ou IPv6, éventuellement hors des plages privées ou réservées.

Autre filtre

Nom de l'ID Description
FILTER_CALLBACK Appelle une fonction utilisateur pour filtrer les données.



Par carabde 20 Aout 2014