You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SAE4.01_FORMULAIRE/Source/Config/Clean.php

59 lines
1.9 KiB

<?php
namespace Config;
class Clean
{
/**
* Cette fonction prend une chaîne de caractères en entrée et retourne une version nettoyée de cette chaîne.
* Elle supprime les espaces de début et de fin, ainsi que toutes les balises HTML et encode les
* caractères spéciaux.
*
* @param string $string La chaîne à nettoyer
* @return string La chaîne nettoyée
*/
public static function simpleString(string $string): string
{
$string = strip_tags($string);
$string = trim($string);
return htmlspecialchars($string);
}
/**
* Cette fonction prend une chaîne de caractères en entrée et retourne une version nettoyée de cette chaîne.
* Elle supprime les espaces de début et de fin, ainsi que toutes les balises HTML et encode les
* caractères spéciaux.
* @param $email
* @return string La chaîne nettoyée
*/
public static function email($email): string
{
// Vérifier si l'adresse e-mail est valide
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
// Supprimer les caractères incorrects
$email = preg_replace('/[^a-zA-Z0-9.@]/', '', $email);
}
return filter_var($email, FILTER_SANITIZE_EMAIL);
}
/**
* Cette fonction prend un nombre entier en entrée, nettoie et retourne une version formatée de l'entier.
* Elle applique la fonction filter_var avec le filtre FILTER_SANITIZE_NUMBER_INT.
* @param int $int Le nombre entier à nettoyer et formater
* @return int Le nombre entier formaté
*/
public static function int(mixed $int): int
{
if (!is_int($int)){
$cleaned = preg_replace('/[^0-9]/', '', $int);
return filter_var(intval($cleaned), FILTER_SANITIZE_NUMBER_INT);
}
return filter_var($int, FILTER_SANITIZE_NUMBER_INT);
}
}