Heim > Backend-Entwicklung > PHP-Tutorial > Detaillierte Erklärung der PHP-Escape- und Anti-Escape-String-Funktionen

Detaillierte Erklärung der PHP-Escape- und Anti-Escape-String-Funktionen

伊谢尔伦
Freigeben: 2023-03-07 12:36:02
Original
18062 Leute haben es durchsucht

In der PHP-Sprache kann String-Escape und Anti-Escape mit den eigenen von PHP bereitgestellten Funktionen addslashes() und striplashes() erreicht werden.

1. Funktion addslashes()

Funktion addslashes() wird verwendet, um Backslashes() zur angegebenen Zeichenfolge hinzuzufügen.

Das Syntaxformat ist wie folgt:

addslashes(string);
Nach dem Login kopieren

Beschreibung: Gibt eine Zeichenfolge mit Backslashes vor bestimmten Zeichen für Datenbankabfrageanweisungen usw. zurück. Diese Zeichen sind einfache Anführungszeichen ('), doppelte Anführungszeichen ("), Backslash () und NUL (NULL-Zeichen).

2. Funktion „stripslashes()“

<🎜 Das > Die Funktion „stripslashes()“ wird zum Hinzufügen von backslash() und zum Löschen der Funktion „addcslashes()“ verwendet, um zum Original zurückzukehren. Das Syntaxformat lautet wie folgt:

Wir haben <🎜 eingeführt ><🎜 früher. >Was ist PHP-Escape- und Anti-Escape-String-Daten?

stripslashes(string);
Nach dem Login kopieren
, stellt das Escape-Zeichen „“ vor und wie man das Übertragungszeichen zum Escape- und De-Escape-Zeichen verwendet und verwendet Beispiele dafür so Beschreibung. Hier

Das Beispiel für die Verwendung der Funktion „addslashes()“ zum Escapen der Zeichenfolge und die anschließende Verwendung der Funktion „stripslashes()“ zum Wiederherstellen lautet wie folgt:Das Ausgabeergebnis ist wie folgt:

<?php
  $str = "this url_name = &#39;PHP中文网&#39;";
  echo $str."<br>";
  $a = addslashes($str);               //对字符串进行转义
  echo $a."<br>";                           //输出转义后的字符串
  $b = stripslashes($a);                //对转义后的字符串进行还原
  echo $b."<br>";                          //输出还原后的字符串
?>
Nach dem Login kopieren
Hinweis:

Vor dem Einfügen von Daten in die Datenbank muss die Funktion addcslashes() verwendet werden, um die Zeichenfolge zu maskieren und

Sonderzeichen<🎜 zu vermeiden > ohne Escapezeichen. Beim Einfügen in die Datenbank ist ein Fehler aufgetreten. Außerdem werden die mit der Funktion „addslashes()“ implementierten Escapezeichenfolgen wiederhergestellt, die Daten müssen jedoch vor dem Einfügen in die Datenbank erneut maskiert werden. Hinweis:
this url_name = &#39;PHP中文网&#39;
this url_name = \&#39;PHP中文网\&#39;
this url_name = &#39;PHP中文网&#39;
Nach dem Login kopieren
In Cache-Dateien wird die Funktion addcslashes() im Allgemeinen verwendet, um den Wert von

Cache-Daten in einem bestimmten Bereich zu maskieren, wenn Daten in die Datenbank eingegeben werden sollen, indem der Name O' eingefügt wird. reilly in die Datenbank einfügen, müssen die meisten Datenbanken Folgendes verwenden: O'reilly. Dadurch werden die Daten in die Datenbank eingefügt, ohne dass zusätzliche Escape beim Einfügen von '. addslashes maskiert Sonderzeichen in SQL-Anweisungen, einschließlich ('), ("), () , (NUL) vier Zeichen. Diese Funktion wird verwendet, wenn das DBMS kein eigenes Escape hat Wenn das DBMS jedoch über eine eigene Escape-Funktion verfügt, wird empfohlen, die Originalfunktion zu verwenden. MySQL verfügt beispielsweise über die Funktion mysql_real_escape_string, um SQL zu maskieren. Beachten Sie, dass magic_quotes_gpc vor PHP5.3 standardmäßig aktiviert war und hauptsächlich Addslashes-Vorgänge für $GET, $POST und $COOKIE ausführte. Es besteht also keine Notwendigkeit, Addslashes für diese Variablen wiederholt aufzurufen, da sonst doppelte Escapezeichen auftreten. Allerdings wurde magic_quotes_gpc in PHP5.3 aufgegeben und seit PHP5.4 entfernt. Wenn Sie die neueste Version von PHP verwenden, müssen Sie sich über dieses Problem keine Sorgen machen. Stripslashes ist die Unescape-Funktion von Addslashes.

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der PHP-Escape- und Anti-Escape-String-Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage