Comprendre l'avis de dépréciation : la constante FILTER_SANITIZE_STRING est obsolète
En PHP 8.1, les constantes FILTER_SANITIZE_STRING et FILTER_SANITIZE_STRIPPED sont obsolètes. Cela soulève la question : quels sont les remplacements appropriés pour ces constantes ?
Justification de la dépréciation
Ces filtres étaient imprécis dans leur objectif et pourraient prêter à confusion. Leur fonctionnalité était souvent mal comprise comme étant le filtre de chaîne par défaut, FILTER_UNSAFE_RAW. En conséquence, la communauté PHP a déconseillé leur utilisation.
Options de remplacement
Il existe plusieurs options disponibles pour remplacer FILTER_SANITIZE_STRING et FILTER_SANITIZE_STRIPPED :
function filter_string_polyfill(string $string): string { $str = preg_replace('/\x00|<[^>]*>?/', '', $string); return str_replace(["'", '"'], ['&#39;', '&#34;'], $str); }
Meilleure pratique : échappement des sorties
Il est important de rappelez-vous que la désinfection des entrées n’est pas efficace pour prévenir les risques de sécurité. Au lieu de cela, concentrez-vous sur l’échappement de la sortie pour vous protéger contre les vulnérabilités XSS. Cela garantit que la sortie est sûre quelle que soit toute entrée malveillante qui aurait pu être reçue.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!