Heim  >  Artikel  >  php教程  >  Der Unterschied zwischen PHP, das die Funktionen htmlspecialchars() und strip_tags zum Filtern von HTML-Tags verwendet

Der Unterschied zwischen PHP, das die Funktionen htmlspecialchars() und strip_tags zum Filtern von HTML-Tags verwendet

WBOY
WBOYOriginal
2016-09-30 09:23:101381Durchsuche

Ursprüngliche Adresse: http://www.manongjc.com/article/1103.html

Sehen wir uns zunächst die Anwendungsbeispiele der Funktion „htmlspecialchars“ und der Funktion „strip_tags“ an:

<?<span style="color: #000000;">php  
</span><span style="color: #800080;">$str</span>="<a href='http://www.manongjc.com'>码农教程'\"</a>"<span style="color: #000000;">;  
</span><span style="color: #0000ff;">echo</span> <span style="color: #008080;">htmlspecialchars</span>(<span style="color: #800080;">$str</span><span style="color: #000000;">);  
</span><span style="color: #0000ff;">echo</span> "<br/><br/>"<span style="color: #000000;">;  
</span><span style="color: #0000ff;">echo</span> <span style="color: #008080;">strip_tags</span>(<span style="color: #800080;">$str</span><span style="color: #000000;">);  
</span>?> 

Der Browser gibt die folgenden Ergebnisse aus:

<a href='http://www.manongjc.com'>码农教程'<span style="color: #000000;">"</a>  
  
码农教程</span>'"  

Sehen Sie sich den Quellcode der Seite an. Die Ergebnisse lauten wie folgt:

<span style="color: #0000ff;"><</span><span style="color: #800000;">a </span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">='http://www.manongjc.com'</span><span style="color: #0000ff;">></span>码农教程'"<span style="color: #0000ff;"></</span><span style="color: #800000;">a</span><span style="color: #0000ff;">><</span><span style="color: #800000;">br</span><span style="color: #0000ff;">/><</span><span style="color: #800000;">br</span><span style="color: #0000ff;">/></span>码农教程'" 

Aus den Ergebnissen können wir ersehen, dass der Unterschied zwischen htmlspecialchars() und strip_tags wie folgt ist:

Unterschied 1:

Die Funktion „strip_tags“ wird zum Entfernen von HTML-Tags verwendet, während htmlspecialchars keine HTML-Tags entfernt, sondern nur Tags in HTML-Instanzen umwandelt. Der größte Unterschied zwischen den beiden besteht also darin, dass die eine die HTML-Tags löscht und die andere dies Konvertieren Sie HTML-Tags für andere Zeichen.

Unterschied 2:

Wenn das Tag in der Zeichenfolge, die aus dem HTML-Tag entfernt werden muss, ursprünglich falsch ist, beispielsweise das Größer-als-Symbol fehlt, wird bei Verwendung der Funktion „strip_tags“ ein Fehler zurückgegeben, während kein Fehler auftritt htmlspecialchars, und es wird weiterhin in eine HTML-Entität konvertiert.

Unterschied drei:

Bei der Verhinderung von XSS-Angriffen wird im Allgemeinen empfohlen, die Funktion htmlspecialchars zu verwenden, da strip_tags zwar HTML-Tags löschen kann, jedoch nicht "或'。因此就算你使用了strip_tags. Sie müssen weiterhin die Funktion htmlspecialchars verwenden, um "或'

Wenn Sie bei der Formularübermittlung oder im Benutzerforum möchten, dass die ursprüngliche Datenausgabe an den Browser gesendet wird, verwenden Sie bitte die Funktion htmlspecialchars anstelle der Funktion strip_tags.

Bitte lesen Sie die Lektüre zu den Funktionen htmlspecialchars() und strip_tags:

http://www.manongjc.com/article/1213.html

http://www.manongjc.com/article/1099.html

http://www.manongjc.com/article/795.html

Stellungnahme:
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