html_entity_decode
(PHP 4 >= 4.3.0, PHP 5)
html_entity_decode — Koverter alle HTML-entiteter til deres anvendelige tegn
Beskrivelse
html_entity_decode() er det modsatte af htmlentities(), da den konverterer alle HTML-entiteter til deres anvendelige tegn fra string .
Den valgfrie anden quote_style -parameter lader dig definere hvad der skal gøres med 'enkelte' og "dobbelte" citationstegn. Den tager en af tre konstanter med ENT_COMPAT som standard:
Konstant Navn | Beskrivelse |
---|---|
ENT_COMPAT | Vil konvertere dobbelte citationstegn og lade enkelte være. |
ENT_QUOTES | Vil konvertere både dobbelte og enkelte citationstegn. |
ENT_NOQUOTES | Vil lade både dobbelte og enkelte citationstegn være. |
ISO-8859-1 tegnsættet er standardværdi for den valgfrie tredje charset . Denne definerer tegnsættet brugt i konverteringen.
Følgende tegnkodninger er understøttet i PHP 4.3.0 og senere.
Tegnkodning | Aliaser | Beskrivelse |
---|---|---|
ISO-8859-1 | ISO8859-1 | Vesteuropæisk, Latin-1 |
ISO-8859-15 | ISO8859-15 | Vesteuropæisk, Latin-9. Tilfølger euro-tegnet, franske og finske tegn som mangler i Latin-1 (ISO-8859-1) |
UTF-8 | ASCII-kompatibelt flerbit 8-bit UCS | |
cp866 | ibm866, 866 | DOS-specifik kyrillisk tegnkodning. Denne tegnkodning er understøttet i 4.3.2 |
cp1251 | Windows-1251, win-1251, 1251 | Windows-specifik kyrillisk tegnkodning. Denne tegnkodning er understøttet i 4.3.2. |
cp1252 | Windows-1252, 1252 | Windows-specifik tegnkodning for vesteuropæisk. |
KOI8-R | koi8-ru, koi8r | Russisk. Denne tegnkodning er understøttet i 4.3.2. |
BIG5 | 950 | Traditionelt kinesisk, hovedsageligt brugt i Taiwan. |
GB2312 | 936 | Simplificeret kinesisk, nation standard tegnkodning. |
BIG5-HKSCS | Big5 med Hong Kong-tilføjelser, traditionelt kinesisk. | |
Shift_JIS | SJIS, 932 | Japansk |
EUC-JP | EUCJP | Japansk |
Note: Ingen andre tegnkodninger bliver genkendt, og ISO-8859-1 vil blive brugt i stedet.
Example#1 Dekode HTML-entiteter
<?php
$orig = "Du sku' \"gå\" tur med <b>hunden</b> nu";
$a = htmlentities($orig);
$b = html_entity_decode($a);
echo $a; // Du sku' "gå" tur med <b>hunden</b> nu
echo $b; // Du sku' "gå" tur med <b>hunden</b> nu
// For versioner tidligere end PHP 4.3.0 kan du gøre dette:
function unhtmlentities($string)
{
$trans_tbl = get_html_translation_table(HTML_ENTITIES);
$trans_tbl = array_flip($trans_tbl);
return strtr($string, $trans_tbl);
}
$c = unhtmlentities($a);
echo $c; // Du sku' "gå" tur med <b>hunden</b> nu
?>
Note: You might wonder why trim(html_entity_decode(' ')); doesn't reduce the string to an empty string, that's because the ' ' entity is not ASCII code 32 (which is stripped by trim()) but ASCII code 160 (0xa0) in the default ISO 8859-1 characterset.
See also htmlentities(), htmlspecialchars(), get_html_translation_table(), and urldecode().