Zum Inhalt springen

html_entity_decode()

Dieser Artikel behandelt die PHP-Funktion html_entity_decode(), die zum Konvertieren von HTML-Entitäten in die entsprechenden Zeichen verwendet wird. Diese Funktion ist nützlich für die Arbeit mit HTML-Daten, wie z. B. Daten aus einem HTML-Formular oder einer HTML-Datei. In diesem Artikel werden wir die Syntax und Verwendung von html_entity_decode() erläutern und einige Beispiele bereitstellen.

Die Funktion html_entity_decode() wird verwendet, um HTML-Entitäten in die entsprechenden Zeichen umzuwandeln. Die Syntax der Funktion html_entity_decode() lautet wie folgt:

Die PHP-Syntax von html_entity_decode()

php
string html_entity_decode ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ini_get("default_charset") ]] )

Die Funktion erfordert einen Parameter $string, der die Zeichenkette mit den zu dekodierenden HTML-Entitäten enthält. Darüber hinaus verfügt die Funktion über zwei optionale Parameter: $flags und $encoding.

Hier ist ein Beispiel für die Verwendung der Funktion html_entity_decode():

Beispiel für PHP html_entity_decode()

php
<?php
$html_string = "&lt;h1&gt;Hello World&lt;/h1&gt;";
$decoded_string = html_entity_decode($html_string);
echo $decoded_string;
?>

In diesem Beispiel enthält die Zeichenkettenvariable $html_string HTML-Code mit Entitäten. Wir verwenden die Funktion html_entity_decode(), um die HTML-Entitäten in die entsprechenden Zeichen umzuwandeln.

Die Ausgabe dieses Codes lautet:


html
<h1>Hello World</h1>

Wie Sie sehen können, dekodiert die Funktion die HTML-Entitäten erfolgreich zurück in ihre ursprünglichen Zeichen.

Die Funktion html_entity_decode() kann außerdem einen zweiten Parameter $flags entgegennehmen, der angibt, wie mit Anführungszeichen umgegangen werden soll und welche Entitätsmenge verwendet werden soll. Der Standardwert für $flags ist ENT_COMPAT | ENT_HTML401. Beachten Sie, dass ENT_COMPAT nur doppelte Anführungszeichen dekodiert, während ENT_QUOTES sowohl einfache als auch doppelte Anführungszeichen dekodiert. Für mehr Robustheit können Sie auch Flags wie ENT_IGNORE oder ENT_SUBSTITUTE in Betracht ziehen, um ungültige Entitäten fehlerfrei zu verarbeiten.

Hier ist ein Beispiel für die Verwendung der Funktion html_entity_decode() mit dem Flag ENT_QUOTES:

So verwenden Sie PHP html_entity_decode()?

php
<?php
$html_string = "&lt;p&gt;I'm a paragraph&lt;/p&gt;";
$decoded_string = html_entity_decode($html_string, ENT_QUOTES);
echo $decoded_string;
?>

In diesem Beispiel enthält die Zeichenkettenvariable $html_string HTML-Code mit Entitäten, einschließlich eines einfachen Anführungszeichens. Wir verwenden die Funktion html_entity_decode() mit dem Flag ENT_QUOTES, um die HTML-Entitäten in die entsprechenden Zeichen umzuwandeln und das einfache Anführungszeichen korrekt zu verarbeiten.

Die Ausgabe dieses Codes lautet:


html
<p>I'm a paragraph</p>

Mit dem Flag ENT_QUOTES werden sowohl die Paragraph-Tags als auch das einfache Anführungszeichen korrekt wiederhergestellt.

Die Funktion html_entity_decode() kann außerdem einen dritten Parameter $encoding entgegennehmen, der die Zeichenkodierung der Eingabezeichenkette angibt. Der Standardwert für $encoding entspricht dem Wert der Konfigurationsoption default_charset.

Hier ist ein Beispiel für die Verwendung der Funktion html_entity_decode() mit einer bestimmten Kodierung:

Beispiel zur Verwendung der Funktion html_entity_decode() mit einer bestimmten Kodierung

php
<?php
$html_string = "&lt;h1&gt;Hello World&lt;/h1&gt;";
$decoded_string = html_entity_decode($html_string, ENT_COMPAT | ENT_HTML401, "UTF-8");
echo $decoded_string;
?>

In diesem Beispiel enthält die Zeichenkettenvariable $html_string HTML-Code mit Entitäten. Wir verwenden die Funktion html_entity_decode() mit der Kodierung UTF-8, um die HTML-Entitäten unter Verwendung der Flags ENT_COMPAT | ENT_HTML401 in die entsprechenden Zeichen umzuwandeln.

Die Ausgabe dieses Codes lautet:


html
<h1>Hello World</h1>

Die angegebene UTF-8-Kodierung stellt sicher, dass die Entitäten gemäß dem Zeichensatz korrekt dekodiert werden.

Die Funktion html_entity_decode() ist ein nützliches Werkzeug für die Arbeit mit HTML-Daten, wie z. B. Daten aus einem HTML-Formular oder einer HTML-Datei. Sie hilft Ihnen dabei, HTML-Entitäten in die entsprechenden Zeichen umzuwandeln, wodurch Ihr Code vielseitiger und flexibler wird. Durch die Beherrschung dieser Funktion können Sie zu einem kompetenteren PHP-Entwickler werden.

Wir hoffen, dass dieser Artikel zum Verständnis der Funktion html_entity_decode() in PHP beigetragen hat.

Praxis

Was macht die Funktion `html_entity_decode()` in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.