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

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

藏色散人
Freigeben: 2023-03-14 14:56:01
Original
1676 Leute haben es durchsucht

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;
Nach dem Login kopieren

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 & ' " < und >

Effekt:

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

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;;
Nach dem Login kopieren

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!

Verwandte Etiketten:
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
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage