Die Möglichkeit, einen bestimmten Satz von Zeichen, sogenannte „Html-Entitäten“, zu kodieren und zu dekodieren, gibt es seit PHP4. Unter der großen Anzahl der in PHP integrierten Funktionen gibt es vier nahezu identische Funktionen, die zum Kodieren und Dekodieren von HTML-Entitäten verwendet werden; Trotz ihrer Ähnlichkeiten bieten zwei von ihnen jedoch zusätzliche Funktionen, die den anderen nicht zur Verfügung stehen.
Kodierungsfunktionen | Dekodierungsfunktionen |
---|---|
htmlentities¹ | html_entity_decode¹ |
htmlspecialchars² | htmlspecialchars_decode² |
¹ htmlentities und html_entity_decode können nur Zeichen innerhalb der HTML-Übersetzungstabelle von PHP kodieren und dekodieren.
² htmlspecialchars und htmlspecialchars_decode können nur Sonderzeichen kodieren und dekodieren³.
³ Sonderzeichen werden nicht als HTML-Tags interpretiert und 8-Bit-Zeichen werden nur als ASCII-Zeichen kodiert.
Was diese Klasse von den anderen unterscheidet, ist, dass sie nicht nur in der Lage ist, alle gleichen Zeichen/Entitäten zu kodieren und zu dekodieren, die von den PHP-Funktionen htmlentities() und html_entity_decode() kodiert und dekodiert werden können, sondern auch kodieren kann und eine sehr große Anzahl von Zeichen/Entitäten dekodieren, die die in PHP integrierten HTMLentities-Kodierungs- und Dekodierungsfunktionen aufgrund ihrer fehlenden besonderen Bedeutung in HTML nicht kodieren/dekodieren können, wie:
composer require gavinggordon/htmlentities
include_once ( __DIR__ . ' /vendor/autoload.php ' );
$ htmlentities = new GGG HtmlEntities ();
$ to_encode = ' Test-,;: ' ;
// Set a variable containing a string of the encoded characters you wish to be encoded;
$ encoded = $ htmlentities -> encode ( $ to_encode );
// Get the encoded result by using the encode method on the returned instance of HtmlEntities;
echo $ encoded ;
// Display the encoded result, which is of type String;
// Test‐,;:
$ to_decode = ' Test˜*(# ' ;
// Set a variable containing a string of the encoded characters you wish to be decoded;
$ decoded = $ htmlentities -> decode ( $ to_decode );
// Get the decoded result by using the decode method on the returned instance of HtmlEntities;
echo $ decoded ;
// Display the decoded result, which is of type String;
// Test~*(#
Schauen Sie sich unsere CodeClimate-Statistiken an, indem Sie hier klicken.
Dieser Kurs wurde mit einem PHP Innovation Award ausgezeichnet, der von PHPClasses.org bereitgestellt wird. Auf meine anderen PHP-Klassen kann online über mein GitHub-Profil oder PHPClasses.org-Profil zugegriffen werden.