html_entity_decode Converte le entità HTML nei corrispondenti caratteri Descrizione stringhtml_entity_decode stringstring intquote_style stringcharset La funzione html_entity_decode è l'opposto di htmlentities converte tutte le entità HTML presenti nel parametro string nel corrispondente carattere. Il secondo parametro, quote_style, opzionale, indica cosa occorre fare per gli apici 'singoli' e "doppi". Sono possibili tre scelte indicate da tre costanti con default ENT_COMPAT: Costanti disponibili per <parameter>quote_style</parameter> Nome della costante Descrizione ENT_COMPAT Converte gli apici doppi e lascia inalterati gli apici singoli. ENT_QUOTES Converte sia gli apici doppi sia gli apici singoli. ENT_NOQUOTES Lascia entrambi i tipi di apici inalterati.
Per il terzo parametro opzionale, charset, si utilizza come default il set di caratteri ISO-8859-1. Questo parametro indica quale set di caratteri utilizzare per la conversione. &reference.strings.charsets; Decodifica delle entità HTML dog now"; $a = htmlentities($orig); $b = html_entity_decode($a); echo $a; // I'll "walk" the <b>dog</b> now echo $b; // I'll "walk" the dog now // Per utilizzatori di versioni di PHP antecedenti alla 4.3.0: 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; // I'll "walk" the dog now ?> ]]> Ci si può chiedere come mai la sequenza trim(html_entity_decode('&nbsp;')); non produca una stringa vuota; questo accade perché l'intità '&nbsp;' non corrisponde al codice ASCII 32 (che verrebbe rimosso da trim), ma, nella codifica di default ISO-8859-1, corrisponde al carattere ASCII 160 (0xa0). Vedere anche htmlentities, htmlspecialchars, get_html_translation_table, and urldecode.