Konvertieren Sie die vordefinierten Zeichen „<“ (kleiner als) und „>“ (größer als) in HTML-Entitäten:
<?php $str = " Dies ist ein <b>fetter</b> Text. " ; htmlspecialchars ( $str ) ? >Die HTML-Ausgabe des obigen Codes lautet wie folgt (Quellcode anzeigen):
< ! DOCTYPE html > <html> < body > Dies ist ein & lt ; b & gt ; </html>Die Browserausgabe des obigen Codes lautet wie folgt:
Dies ist ein <b>fetter</b> Text.Die Funktion htmlspecialchars() konvertiert einige vordefinierte Zeichen in HTML-Entitäten.
Die vordefinierten Zeichen sind:
& (kaufmännisches Und) wird zu &
„ (doppeltes Anführungszeichen) wird zu "
' (einfaches Anführungszeichen) wird zu '
< (kleiner als) wird zu <
> (größer als) werden>
Tipp: Um spezielle HTML-Entitäten wieder in Zeichen umzuwandeln, verwenden Sie die Funktion htmlspecialchars_decode().
htmlspecialchars( string,flags,character-set,double_encode )
Parameter | beschreiben |
---|---|
Zeichenfolge | Erforderlich. Gibt die zu konvertierende Zeichenfolge an. |
Flaggen | Optional. Gibt an, wie mit Anführungszeichen und ungültigen Kodierungen umgegangen wird und welcher Dokumenttyp verwendet werden soll. Verfügbare Angebotstypen: ENT_COMPAT – Standard. Es werden nur doppelte Anführungszeichen codiert. ENT_QUOTES – Kodiert doppelte und einfache Anführungszeichen. ENT_NOQUOTES – Keine Anführungszeichen kodieren. Ungültige Kodierung: ENT_IGNORE – Ignorieren Sie ungültige Codierungen, anstatt dass die Funktion eine leere Zeichenfolge zurückgibt. Dies sollte vermieden werden, da dies Auswirkungen auf die Sicherheit haben kann. ENT_SUBSTITUTE – Ersetzt eine ungültige Codierung mit dem angegebenen Zeichen durch das Unicode-Ersatzzeichen U+FFFD (UTF-8) oder &#FFFD;, anstatt eine leere Zeichenfolge zurückzugeben. ENT_DISALLOWED – Ersetzt ungültige Codepunkte im angegebenen Dokumenttyp durch die Unicode-Ersatzzeichen U+FFFD (UTF-8) oder &#FFFD;. Zusätzliche Flags, die den zu verwendenden Dokumenttyp angeben: ENT_HTML401 – Standard. Code verarbeitet als HTML 4.01. ENT_HTML5 – Code verarbeitet als HTML 5. ENT_XML1 – Code verarbeitet als XML 1. ENT_XHTML – als XHTML-Verarbeitungscode. |
Zeichensatz | Optional. Eine Zeichenfolge, die den zu verwendenden Zeichensatz angibt. Zulässige Werte: UTF-8 – Standard. ASCII-kompatibler Multibyte-8-Bit-Unicode ISO-8859-1 – Westeuropa ISO-8859-15 – Westeuropa (Euro-Symbol hinzugefügt + französische und finnische Buchstaben fehlen in ISO-8859-1) cp866 – DOS-spezifischer kyrillischer Zeichensatz cp1251 – Windows-spezifischer kyrillischer Zeichensatz cp1252 – Windows-spezifischer westeuropäischer Zeichensatz KOI8-R – Russisch BIG5 – Traditionelles Chinesisch, hauptsächlich in Taiwan verwendet GB2312 – Vereinfachtes Chinesisch, nationaler Standardzeichensatz BIG5-HKSCS – Big5 mit Hongkong-Erweiterung Shift_JIS – Japanisch EUC-JP – Japanisch MacRoman – Zeichensatz, der vom Mac-Betriebssystem verwendet wird Hinweis: In Versionen vor PHP 5.4 wurden nicht erkannte Zeichensätze ignoriert und durch ISO-8859-1 ersetzt. Ab PHP 5.4 werden nicht erkannte Zeichensätze ignoriert und durch UTF-8 ersetzt. |
double_encode | Optional. Ein boolescher Wert, der angibt, ob vorhandene HTML-Entitäten codiert werden sollen. TRUE – Standard. Jede Entität wird konvertiert. FALSE – Vorhandene HTML-Entitäten werden nicht codiert. |
Rückgabewert: | Gibt die konvertierte Zeichenfolge zurück. Wenn die Zeichenfolge eine ungültige Codierung enthält, wird eine leere Zeichenfolge zurückgegeben, es sei denn, das Flag ENT_IGNORE oder ENT_SUBSTITUTE ist gesetzt. |
---|---|
PHP-Version: | 4+ |
Protokoll aktualisieren: | In PHP 5 wurde der Standardwert des Zeichensatzparameters in UTF-8 geändert. In PHP 5.4 neu: ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 und ENT_XHTML. In PHP 5.3 wurde ENT_IGNORE hinzugefügt. In PHP 5.2.3 wurde der Parameter double_encode hinzugefügt. In PHP 4.1 wurde der Zeichensatzparameter hinzugefügt. |
Konvertieren Sie einige vordefinierte Zeichen in HTML-Entitäten:
<?php $str = " Jane & 'Tarzan' " ; htmlspecialchars ( $str , ENT_COMPAT ) ; // Standardmäßig werden nur doppelte Anführungszeichen codiert Echo „ <br> “ ; Echo htmlspecialchars ( $str , ENT_QUOTES ) ; // Doppelte und einfache Anführungszeichen kodieren Echo „ <br> “ ; Echo htmlspecialchars ( $str , ENT_NOQUOTES ) ; // Keine Anführungszeichen kodieren ?>Die HTML-Ausgabe des obigen Codes lautet wie folgt (Quellcode anzeigen):
< ! DOCTYPE html > <html> < body > Jane & ' Tarzan ' < br > Jane & ' Tarzan ' < / body > </html>Die Browserausgabe des obigen Codes lautet wie folgt:
Jane & 'Tarzan'Jane & 'Tarzan'Jane & 'Tarzan'Konvertieren Sie doppelte Anführungszeichen in HTML-Entitäten:
<?php $str = ' Ich liebe "PHP". ' ; htmlspecialchars ( $str , ENT_QUOTES ) ; // Doppelte und einfache Anführungszeichen kodieren ?> ;Die HTML-Ausgabe des obigen Codes lautet wie folgt (Quellcode anzeigen):
< ! DOCTYPE html > <html> < body > Ich liebe " ; PHP < / body > </html>Die Browserausgabe des obigen Codes lautet wie folgt:
Ich liebe „PHP“.