FORMCHECKER
PHP5
Package de validation de données, utilisateur ou non.
Instanciation :
formChecker::__construct ($loc = 'FRA');
$loc (string) => localisation choisie, via le code alpha 3 du pays voulu.
Exemple d'instanciation :
$oChecker = new formChecker ('FRA');
Méthodes publiques :
formChecker::validate ($mString, $sName, $cPattern, $aOptions = null, $bMandatory = true)
applique un masque pour valider la donnée.
$mString (string) => la donnée à valider
$sName (string) => nom défini par l'utilisateur à appliquer à la donnée. Sera utilisé dans les messages de retour.
$cPattern (formChecker const) => constante de masque de validation
$aOptions (array) (optionnel) => tableau d'options. null si pas d'options.
$bMandatory (boolean) (optionnel) => true si la donnée est nécessaire (vide = non conforme), false sinon (vide = conforme).
@return (boolean) true si la donnée est conforme, false sinon.
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('strict_length' => 5, 'not_starting_with' => array ('00')))
formchecker::sanitizeStr ($mString, $aOptions = array ('addslashes', 'htmlentities'))
assainit la donnée en tant que donnée de type chaîne
$mString (string) => la donnée à assainir
$aOptions (array) => tableau d'options.
@return (string) la donnée assainie
Options disponibles :
addslashes => applique la fonction addslashes () sur la donnée
htmlentities => applique la fonction htmlentities () sur la donnée
urlencode => applique la fonction urlencode () sur la donnée
trim => applique la fonction trim () sur la donnée
mssqlEscape => échappe les apostrophes en les doublant (nécessaire pour mssql)
Utilisation exemple :
$maChaine = $oChecker -> sanitizeStr ('maChaine ', array ('trim'));
formChecker::sanitizeInt ($mString, $aOptions = array ('onlyInt'))
assainit la donnée en tant que donnée numérique
$mString (string) => la donnée à assainir
$aOptions (array) => tableau d'options
@return (string) la donnée assainie
Options disponibles :
onlyInt => applique une expression régulière afin de ne récupérer QUE les charachtères de type entier dans la donnée
Utilisation exemple :
$myInt = $oChecker -> sanitizeInt ('12-32-15', array ('onlyInt'));
formChecker::sanitizeUserFunc ($mString, $aOptions = array ('user_func' => '', 'user_func_params' => array ()))
assainit la donnée en utilisant une fonction définie par l'utilisateur
$mString (string) => la donnée à assainir
$aOptions (array) => tableau d'options
@return (string) la donnée assainie
Options disponibles :
user_func => obligatoire. Doit contenir le nom de la fonction à utiliser
user_func_params => optionnel. Doit être un tableau contenant les paramètres attendus par la fonction utilisateur, MOINS la donnée elle-même.
Donc la fonction doit accepter AU MOINS 1 paramètre : la donnée. Et si il y a plus de paramètres, la donnée DOIT être dans le dernier paramètre attendu.
Utilisation exemple :
$sToBeSanitized = $oChecker -> sanitizeUserFunc ($sToBeSanitized, array ('user_func' => 'mySanitizer'));
Masque :
Ces masques sont des constantes de classe.
const VALIDATE_EMAIL => utilisation du masque de validation d'email
const VALIDATE_INT => utilisation du masque de validation d'entier
const VALIDATE_TEXT => utilisation du masque de validation dde texte
const VALIDATE_URL => utilisation du masque de validation d'url
const VALIDATE_REGEXP = => utilisation du masque de validation par expression régulièree définie par l'utilisateur
const VALIDATE_USER_FUNC = => utilisation du masque de validation par une fonction définie par l'utilisateur
Options :
Ce sont des options à appliquer afin d'affiner le masque utilisé. Ces options peuvent évidemment être cumulées.
Pour tous les types de masques:
forbidden => (string) ou (array) indique la ou les valeurs interdites pour la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('forbidden' => array ('12345', '6789')))
ou
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('forbidden' => '12345'))
allowed => (string) ou (array) indique la ou les valeurs autorisées pour la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('allowed' => array ('12345', '6789')))
ou
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('allowed' => '12345'))
min_length => (int) longueur minimale en caractères de la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('min_length' => 6))
max_length => (int) longueur maximale en caractères de la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('max_length' => 4))
strict_length => (int) longueur obligatoire stricte en caractères de la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('strict_length' => 5))
starting_with => (array) tableau de valeurs par lesquelles la donnée doit commencer (la donnée doit commencer par l'une d'elle)
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('starting_with' => array ('1', '3', '5')))
not_starting_with => (array) tableau de valeurs par lesquelles la donnée ne doit pas commencer
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('not_starting_with' => array ('1', '3', '5')))
Pour le masque regexp seulement (formChecker::VALIDATE_REGEXP)
regexp => (string) expression régulière définie par l'utilisateur qui doit être utilisée pour la validation
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_REGEXP, array ('regexp' => '@(bla|bli)@'))
Pour le masque user function seulement (formChecker::VALIDATE_USER_FUNC)
user_func => (string) nom de la fonction utilisateur utilisée pour la validation
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_USER_FUNC, array ('user_func' => 'myFunc'))
user_func_params => (array) paramètres attendus par la fonction utilisateur MOINS la donnée en elle-même
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_USER_FUNC, array ('user_func' => 'myFunc', 'user_func_params' => array ('param')))
A NOTER : la méthode de validation de ce masque va de toute manière ajouter la donnée à valider à la fin du tableau de paramètres (qu'il y en ait un ou non).
Donc, votre fonction DOIT implémenter ce paramètre au moins, et s'il y a d'autres paramètres, la donnée DOIT être attendue dans le DERNIER paramètre passé à la fonction.
De même, la fonction utilisateur DOIT retourner un booléen : true ou false. true si la condition est rempli (donc la donnée est conforme), false sinon.
Le masque n'attend aucune autre valeur de retour.
Pour le masque int seulement (formChecker::VALIDATE_INT)
min_range => (int) valeur minimale de la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('min_range' => 12344))
max_range => (int) valeur maximale de la donnée
Utilisation exemple :
$bRes = $oChecker -> validate ('12345', 'zip code', formChecker::VALIDATE_INT, array ('max_range' => 12346))
|