PHP html_entity_decode()Funktionen

PHP String 参考手册PHP-String-Referenzhandbuch

Beispiele

HTML-Entities in Zeichen umwandeln:

<?php
$str = "&lt;&copy; W3CS&ccedil;h&deg;&deg;&brvbar;&sect;&gt;";
echo html_entity_decode($str);
?>

Die HTML-Ausgabe des obigen Codes ist wie folgt (Quellcode anzeigen):

<!DOCTYPE html>
<html>
<body>
<© W3CSçh°°¦§>
</body>
</html>

Die Browser-Ausgabe des obigen Codes lautet wie folgt:

<© W3CSçh°°¦§>


Definition und Verwendung

Die Funktion html_entity_decode() konvertiert HTML-Entities in Zeichen.

Die Funktion html_entity_decode() ist die Umkehrfunktion der Funktionhtmlentities().


Syntax

html_entity_decode(string,flags,character-set)

Parameters Beschreibung
string Erforderlich. Gibt die zu dekodierende Zeichenfolge an.
Flags Optional. Legt fest, wie Anführungszeichen behandelt werden und welcher Dokumenttyp verwendet werden soll.

Verfügbare Anführungszeichen-Typen:

  • ENT_COMPAT - Standard. Dekodiert nur doppelte Anführungszeichen.
  • ENT_QUOTES - Dekodiert doppelte und einfache Anführungszeichen.
  • ENT_NOQUOTES - Dekodiert keine Anführungszeichen.

Zusätzliche Flags, die den zu verwendenden Dokumenttyp angeben:

  • ENT_HTML401 - Standard. Code als HTML 4.01 verarbeiten.
  • ENT_HTML5 - Code als HTML 5 verarbeiten.
  • ENT_XML1 - Code als XML 1 verarbeiten.
  • ENT_XHTML - Code als XHTML verarbeiten.
Zeichensatz Optional. Eine Zeichenfolge, die den zu verwendenden Zeichensatz angibt.

Zulässige Werte:

  • UTF-8 - Standard. ASCII-kompatibles Multibyte-8-Bit-Unicode
  • ISO-8859-1 - Westeuropäisch
  • ISO-8859-15 - Westeuropäisch (ergänzt das Euro-Zeichen + französische und finnische Buchstaben, die in ISO-8859-1 fehlen)
  • 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-Erweiterungen
  • Shift_JIS - Japanisch
  • EUC-JP - Japanisch
  • MacRoman - Vom Mac-Betriebssystem verwendeter Zeichensatz

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.

Technische Details

Rückgabewert: Gibt die konvertierte Zeichenfolge zurück.
PHP-Version: 4.3.0+
Änderungsprotokoll: In PHP 5, wurde der Standardwert des Parameterscharacter-setauf UTF-8 geändert.

In PHP 5.4 wurden zusätzliche Flags zur Angabe des zu verwendenden Dokumenttyps hinzugefügt: ENT_HTML401, ENT_HTML5, ENT_XML1 und ENT_XHTML.

In PHP 5.0 wurde Unterstützung für Multibyte-Kodierungen hinzugefügt.


Weitere Beispiele

Beispiel 1

Einige HTML-Entitäten in Zeichen umwandeln:

<?php
$str = "Jane &amp; &#039;Tarzan&#039;";
echo html_entity_decode($str, ENT_COMPAT); // Konvertiert nur doppelte Anführungszeichen
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES); // Konvertiert doppelte und einfache Anführungszeichen
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES); // Konvertiert keine Anführungszeichen
?>

Die HTML-Ausgabe des obigen Codes ist wie folgt (Quellcode anzeigen):

<!DOCTYPE html>
<html>
<body>
Jane & &#039;Tarzan&#039;<br>
Jane & 'Tarzan'<br>
Jane & &#039;Tarzan&#039;
</body>
</html>

Die Browser-Ausgabe des obigen Codes lautet wie folgt:

Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'


Beispiel 2

Einige HTML-Entitäten mithilfe des westeuropäischen Zeichensatzes in Zeichen umwandeln:

<?php
$str = "My name is &Oslash;yvind &Aring;sane. I&#039;m Norwegian.";
echo html_entity_decode($str, ENT_QUOTES, "ISO-8859-1");
?>

Die HTML-Ausgabe des obigen Codes ist (Quelltext anzeigen):

<!DOCTYPE html>
<html>
<body>
Mein Name ist Øyvind Åsane. Ich bin Norweger.
</body>
</html>

Die Browser-Ausgabe des obigen Codes lautet wie folgt:

Mein Name ist Øyvind Åsane. Ich bin Norweger.



PHP String 参考手册PHP-String-Referenzhandbuch Weitere Erweiterungen