Maison > Article > développement back-end > Comment échapper une chaîne en php
Comment échapper des chaînes en php : 1. Utilisez le caractère d'échappement "", le premier caractère qui suit immédiatement "" deviendra un caractère dénué de sens ou ayant une signification spéciale ; 2. Utilisez la fonction addlashes(), syntaxe "addslashes($str) ".
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3
Dans le processus de programmation PHP, nous rencontrons souvent de tels problèmes, ce qui peut entraîner des problèmes lors de l'insertion de données dans la base de données Par exemple, des erreurs ou des caractères tronqués peuvent survenir. En effet, la base de données interprète les caractères des données entrantes comme des caractères de contrôle. Pour résoudre ce problème, vous devez utiliser une marque ou échapper à ces caractères spéciaux.
PHP fournit une technologie spécifiquement pour traiter ces problèmes. Il existe deux méthodes d'échappement et de restauration de chaînes, l'une consiste à échapper et à restaurer manuellement les chaînes, et l'autre consiste à échapper et à restaurer automatiquement les chaînes.
Méthode 1 : Échapper et restaurer manuellement les chaînes
Les chaînes peuvent être définies de trois manières : les guillemets simples ' ", les guillemets doubles " " et les délimiteurs
est un caractère d'échappement, et le premier caractère qui le suit immédiatement deviendra un caractère sans signification ni signification particulière. Par exemple, ' est un symbole spécial qui définit une chaîne, mais lorsqu'il est écrit sous la forme ', il perd sa fonction de définition d'une chaîne et devient un guillemet simple ordinaire. Nous pouvons utiliser echo "'"; pour afficher un guillemet simple, et le caractère d'échappement ne sera pas affiché.
【Exemple】Utilisez des mots d'échappement pour échapper aux chaînes.
<?php header("Content-type:text/html;charset=utf-8"); echo 'Name:\'php中文网\'<br>Url:\'https://www.php.cn//\''; ?>
Les résultats d'exécution sont les suivants :
Pour les chaînes simples, il est recommandé d'utiliser des méthodes manuelles pour échapper les chaînes, et pour les chaînes contenant de grandes quantités de données, il est recommandé d'utiliser des fonctions d'échappement automatiques pour échapper aux chaînes. .
2. Chaînes d'échappement et de restauration automatiques
Les chaînes d'échappement et de restauration automatiques peuvent être implémentées à l'aide de la fonction addlashes() et de la fonction stripslashes() fournies par PHP. La fonction de la fonction
addslashes() est d'ajouter à la chaîne et d'échapper à la chaîne spécifiée. Le format de syntaxe est le suivant :
addslashes($str)
addslashes() La chaîne renvoyée par la fonction sera incluse dans la chaîne à cet effet. de requête de base de données et d'autres instructions. Certains caractères sont précédés d'une barre oblique inverse. Ces caractères sont des guillemets simples ", des guillemets doubles", des barres obliques inverses et NULL. La fonction
stripslashes() est de restaurer une chaîne échappée, c'est-à-dire pour supprimer la barre oblique inverse ajoutée à la chaîne, le format de syntaxe est le suivant : la fonction
stripslashes($str)
stripslashes() renverra une chaîne après avoir supprimé la barre oblique inverse échappée ("convertir en", double barre oblique inverse\ est convertie en une seule ligne de barre oblique inverse)
[Exemple] Utilisez la fonction addlashes() pour échapper à la chaîne, puis utilisez la fonction stripslashes() pour la restaurer
<?php header("Content-type:text/html;charset=utf-8"); $sql = "select * from php where website='php中文网'"; $str = addslashes($sql); echo $str.'<br>'; $str = stripslashes($str); echo $str; ?>
Les résultats d'exécution sont les suivants :
Apprentissage recommandé : "PHP. Tutoriel vidéo 》
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!