Maison >développement back-end >Problème PHP >Quelles sont les fonctions d'échappement php ?

Quelles sont les fonctions d'échappement php ?

青灯夜游
青灯夜游original
2021-03-17 11:17:572301parcourir

Les fonctions d'échappement php incluent : 1. la fonction addlashes() ; 2. la fonction htmlspecialchars() ; 3. la fonction htmlentities() ; 4. la fonction mysql_real_escape_string() ;

Quelles sont les fonctions d'échappement php ?

L'environnement d'exploitation de ce tutoriel : système Windows7, version PHP7.1, ordinateur DELL G3

1. >

addslashes échappe aux caractères spéciaux dans les instructions SQL, y compris ('), ("), (), (NUL) quatre caractères.

Cette fonction est utilisée lorsque le SGBD n'a pas sa propre fonction d'échappement. Cependant, si le SGBD a sa propre fonction d'échappement, il est recommandé d'utiliser la fonction d'origine. Par exemple, MySQL a la fonction mysql_real_escape_string. échapper à SQL.

Notez qu'avant PHP5.3, magic_quotes_gpc était activé par défaut, principalement dans $GET, $POST, Effectuez l'opération addlashes sur $COOKIE, il n'est donc pas nécessaire d'appeler addlashes à plusieurs reprises sur ces variables, sinon ce sera double s'échapper.

Cependant, magic_quotes_gpc a été abandonné dans PHP5.3 et a été supprimé depuis PHP5.4 Si vous utilisez la dernière version de PHP, vous n'avez pas à vous soucier de ce problème. stripslashes est la fonction d'échappement des addlashes.



2. htmlspecialchars

htmlspecialchars échappe plusieurs caractères spéciaux en HTML en HTML Forme d'entité (format : &xxxx;), comprenant (&), ('), ("), (<), (>) cinq caractères.

& (AND) => &

” (guillemets doubles) => " (quand ENT_NOQUOTES n'est pas défini)
' (guillemets simples) => ' (lorsque ENT_QUOTES est défini)
< (inférieur au signe) =>
htmlspecialchars peuvent être utilisés pour filtrer les données $GET, $POST, $COOKIE afin d'empêcher XSS. Notez que la fonction htmlspecialchars n'échappe qu'aux caractères HTML considérés comme présentant des risques de sécurité. Si vous souhaitez échapper tous les caractères qui peuvent être échappés en HTML, veuillez utiliser htmlentities. htmlspecialchars_decode est la fonction de décodage de htmlspecialchars.

3. htmlentities

htmlentities échappe au contenu évitable en HTML en HTML Entité. html_entity_decode est la fonction de décodage des htmlentities.

4. mysql_real_escape_string

mysql_real_escape_string appellera la fonction de la bibliothèque MySQL mysql_real_escape_string, pour (x00), (n), (r), (), ('), (x1a) pour échapper, c'est-à-dire ajouter une barre oblique inverse () devant pour empêcher l'injection SQL. Notez que vous n'avez pas besoin d'appeler des barres obliques inverses pour annuler l'échappement lors de la lecture des données de la base de données, car ces barres obliques inverses sont ajoutées lorsque la base de données exécute SQL, et les barres obliques inverses seront supprimées lorsque les données sont écrites dans la base de données, donc le contenu écrit dans la base de données sont les données d'origine, et il n'y aura pas de barre oblique inverse devant.

5. strip_tags

strip_tags filtrera les balises NUL, HTML et PHP.

Apprentissage recommandé : "

Tutoriel vidéo PHP

"

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn