Maison > Article > développement back-end > Méthodes et restauration des chaînes échappées en PHP (exemples détaillés)
Dans l'article précédent "Encodage et décodage de JSON en PHP (exemples détaillés)" nous avons présenté en détail les connaissances sur l'encodage et le décodage de JSON avec des tableaux et des chaînes en PHP. Jetons un coup d'œil à cet article. J'espère que cela aidera tout le monde. avec des connaissances pertinentes sur l'échappement de caractères en PHP !
Dans l'article précédent, nous avons appris que nous pouvons encoder et décoder des données PHP via la fonction json_encode()
et la fonction json_decode()
. jetez un œil à comment échapper des chaînes en PHP. json_encode()
函数和json_decode()
函数来进行PHP数据的编码和解码,接下来我们来看一下PHP中怎样对字符串进行转义的操作。
在PHP的开发项目中,能够遇到很多进行字符串转义的操作,这时候要怎样进行字符串的转义,在PHP中我们可以通过转义字符和能够进行自动转义的函数来进行操作。下面就让我们一起来看一下吧。
转义字符-手动转义字符串
在之前的文章中,我们介绍过转义字符,转义字符可以把它看成是能够进行转义效果的特殊字符,转义字符一般都是用反斜杠“”开始,后面会有一个或者多个字符,这样的话,转义字符就有了能够转义的含义。简单来说,转义字符就把它看成一种特殊的字符常量。
转义字符能够将普通的字符转化为特殊用途,用这些特殊的用途能够能够将字符转化为它本来的意义。
想要使用转义字符来转换字符串的话,其中需要注意的是,字符串使用单引号或者双引号进行定义的,在字符串中如果存在能够干扰字符串定义的字符,这时候我们就需要将字符串内可能有干扰的字符进行转义,这样的话就能够避免自负的定义出现歧义。
接下来我们通过示例来看一下通过转义字符来转义字符串,示例如下:
当我们想要输出:网址是:'https://www.php.cn/' 的时候,如果单纯地使用echo来输出字符串,其中的字符可能会影响最后的输出结果导致错误,这时候通过转义符就能够避免这种问题:
<?php header("Content-type:text/html;charset=utf-8"); echo '网址是:\'https://www.php.cn/\''; ?>
输出结果:
这时候就是我们通过转义符将字符串进行转义,这样的话就能够输出我们想要的结果了。
这种手动进行转义,适用于一些简单的字符串,当字符串很复杂的时候,或者字符串很长,这时候再使用转义字符进行手动转义就有些麻烦了,那有没有什么好的解决方法呢?
在PHP中提供了addslashes()
函数和 stripslashes()
函数能够对字符串进行自动转义,下面就让我们来看一下。
<strong><span style="font-size: 20px;">addslashes() </span></strong>
函数-自动转义字符串
PHP中提供addslashes()函数是用来进行自动转义,通过addslashes()函数能够在字符串中的预定义字符之前加入一个反斜杠“”,其中这个预定义字符就包括单引号、双引号和反斜杠。
该函数的基本语法格式如下:
addslashes(string)
其中需要注意的是,参数string表示的就是需要进行转义的字符串,返回的结果就是已经进行转义的字符串。
下面我们通过示例来看一下该函数的使用,示例如下:
<?php $str = "['好好学习'=>'天天向上','福如东海'=>寿比南山]"; echo $str . "<br>"; $a = addslashes($str); echo $a . "<br>"; ?>
输出结果:
可以简单的理解为在需要进行转义的字符前面加上反斜杠,
<strong><span style="font-size: 20px;">stripslashes()</span></strong>
函数-还原字符串
上文中我们说到了在PHP中我们可以通过addslashes
() 函数来进行转义操作,也就是在指定的位置添加反斜杠,与之对应的就是stripslashes
()函数,它的作用就是用来还原字符串,删除由addslashes
Dans les projets de développement PHP, vous pouvez rencontrer de nombreuses opérations d'échappement de chaînes à l'heure actuelle. En PHP, nous pouvons utiliser des caractères d'échappement et des fonctions qui peuvent effectuer un échappement automatique. Jetons-y un coup d’œil ensemble.
Caractères d'échappement - chaînes d'échappement manuelles
Dans l'article précédent, nous avons introduit les caractères d'échappement, les caractères d'échappement peuvent être considérés comme caractères spéciaux qui peuvent effectuer des effets d'échappement. Les caractères d'échappement commencent généralement par une barre oblique inverse "", suivie d'un ou plusieurs caractères. Dans ce cas, le caractère d'échappement a une signification pouvant être échappée. En termes simples, le caractère d'échappement est traité comme une constante de caractère spécial.
Les caractères d'échappement peuvent convertir des caractères ordinaires en utilisations spéciales et utiliser ces utilisations spéciales pour convertir les caractères dans leur signification d'origine.
Ensuite, prenons un exemple pour échapper une chaîne en échappant des caractères. L'exemple est le suivant :
🎜Quand nous voulons afficher : L'URL est : 'https://www.php.cn/'🎜 Si vous utilisez simplement echo pour générer une chaîne, les caractères qu'elle contient peuvent affecter la sortie finale Le résultat provoque une erreur. Ce problème peut être évité en utilisant des caractères d'échappement : 🎜stripslashes(string)🎜Résultat de sortie : 🎜🎜🎜🎜🎜À ce stade, nous échappons la chaîne via le caractère d'échappement, afin de pouvoir afficher le résultat souhaité. 🎜🎜Ce type d'échappement manuel convient à certaines chaînes simples. Lorsque la chaîne est très complexe ou très longue, il sera un peu gênant d'utiliser des caractères d'échappement pour s'échapper manuellement. solution? 🎜🎜🎜La fonction
addslashes()
et la fonction stripslashes()
sont fournies en PHP pour échapper automatiquement les chaînes. 🎜🎜<strong><span style="max-width:90%">addslashes() </span></strong>
Fonction - Échapper automatiquement les chaînes🎜🎜La fonction addlashes() fournie en PHP est utilisée pour l'échappement automatique. La fonction addlashes() peut être ajoutée avant les caractères prédéfinis dans la chaîne. Une barre oblique inverse "
", où ce caractère prédéfini inclut des guillemets simples, des guillemets doubles et des barres obliques inverses. 🎜🎜Le format de syntaxe de base de cette fonction est le suivant : 🎜<?php $str = "['好好学习'=>'天天向上','福如东海'=>寿比南山]"; echo $str . "<br>"; $a = addslashes($str); echo $a . "<br>"; $b = stripslashes($a); echo $b . "<br>"; ?>🎜Il convient de noter que la chaîne de paramètre représente la chaîne qui doit être échappée et que le résultat renvoyé est la chaîne échappée. 🎜🎜Regardons l'utilisation de cette fonction à travers un exemple. L'exemple est le suivant : 🎜rrreee🎜Résultat de sortie : 🎜🎜🎜🎜🎜 peut être simplement compris comme l'ajout d'une barre oblique inverse devant le caractère qui doit être échappé, 🎜🎜 stripslashes() Fonction -Restore String🎜🎜Nous avons mentionné ci-dessus qu'en PHP, nous pouvons utiliser la fonction
addslashes
() pour effectuer des opérations d'échappement, c'est-à-dire ajouter une barre oblique inverse à la position spécifiée, et La fonction correspondante est la fonction stripslashes
(), qui permet de restaurer la chaîne et de supprimer les barres obliques inverses ajoutées par la fonction addslashes
(). Le format de syntaxe de base de la fonction 🎜🎜stripslashes() est le suivant : 🎜rrreee🎜Il convient de noter que la chaîne de paramètre représente la chaîne qui doit être utilisée et que le résultat renvoyé est la chaîne avec les barres obliques inverses supprimées. 🎜🎜Regardons ensuite l'application de la fonction stripslashes() à travers un exemple. L'exemple est le suivant : 🎜rrreee🎜Résultat de sortie : 🎜🎜🎜🎜🎜.Grâce à l'exemple ci-dessus, nous utilisons la fonction stripslashes() pour restaurer la chaîne échappée par la fonction addlashes().
L'échappement et la restauration des chaînes peuvent être effectués via la fonction addlashes() et la fonction stripslashes().
Si vous êtes intéressé, vous pouvez cliquer sur "Tutoriel vidéo PHP" pour en savoir plus sur les connaissances 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!