Heim  >  Artikel  >  Backend-Entwicklung  >  Was tun, wenn PHP-HTML-Entitäten verstümmelt sind?

Was tun, wenn PHP-HTML-Entitäten verstümmelt sind?

藏色散人
藏色散人Original
2021-12-21 10:21:541542Durchsuche

Lösung für verstümmelte PHP-HTML-Entities-Zeichen: 1. Verwenden Sie „htmlentities($str,ENT_COMPAT,“GB2312“)“; 2. Geben Sie „htmlspecialchars($str)“ aus.

Was tun, wenn PHP-HTML-Entitäten verstümmelt sind?

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP Version 7.1, Dell G3-Computer.

php htmlentities Was tun, wenn der Code verstümmelt ist?

Die HTMLentities in PHP verursachen das Problem, dass Chinesisch nicht abgefragt werden kann

In PHP konvertiert htmlspecialchars alle Zeichen in HTML-Strings. Lassen Sie mich sie unten kurz vorstellen.

... konvertiert in < ; > (Größer als) Konvertieren in >Beispiel

 $str = "John & &#39;Adams&#39;"; 
 echo htmlentities($str, ENT_COMPAT); 
 echo " 
 "; 
 echo htmlentities($str, ENT_QUOTES); 
 echo " 
 "; 
 echo htmlentities($str, ENT_NOQUOTES); 
 ?> 
 
John & &#39;Adams&#39;
 John & &#39;Adams&#39;
 John & &#39;Adams&#39;

Ihr Unterschied

Die Funktionen dieser beiden Funktionen bestehen darin, Zeichen in HTML-Zeichenkodierung umzuwandeln, insbesondere URLs und Codezeichenfolgen. Verhindern Sie, dass Zeichen-Tags vom Browser ausgeführt werden. Es gibt keinen Unterschied bei der Verwendung von Chinesisch, aber htmlentities formatiert chinesische Zeichen, sodass chinesische Eingaben verstümmelt werden. htmlspecialchars formatiert nur die Sonderzeichen & ' " 15f1d17f5230cf4aaf0a21761e7dbf2e

Effekt:

$str = "John & &#39;Adams&#39;"; 
 echo htmlspecialchars($str, ENT_COMPAT); 
 echo " 
 "; 
 echo htmlspecialchars($str, ENT_QUOTES); 
 echo " 
 "; 
 echo htmlspecialchars($str, ENT_NOQUOTES); 
 ?>

echo '. htmlentities gibt die GB2312-Kodierung an: '.htmlentities($str,ENT_COMPAT,"GB2312").'';

echo 'htmlentities gibt keine Kodierung an: '.htmlentities($str).'';

$str = &#39;<a href="demo.php?m=index&a=index&name=中文" rel="external nofollow" rel="external nofollow" >测试页面</a>&#39;;

echo htmlspecialchars ($ str).'';

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP-HTML-Entitäten verstümmelt sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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