Funzione html_entity_decode() di PHP
Esempio
Converti gli entity HTML in caratteri:
<?php $str = "<© W3Sçh°°¦§>"; echo html_entity_decode($str); ?>
L'output HTML del codice sopra è il seguente (vedere il codice sorgente):
<!DOCTYPE html> <html> <body> <? W3S?h????> </body> </html>
Output del browser del codice sopra:
<? W3S?h????>
Definizione e uso
La funzione html_entity_decode() converte gli entity HTML in caratteri.
La funzione html_entity_decode() è htmlentities() Funzione inversa.
Sintassi
html_entity_decode(string,flags,character-set)
Parametro | Descrizione |
---|---|
string | Obbligatorio. Specifica la stringa da decodificare. |
flags |
Opzionale. Specifica come trattare le virgolette e quale tipo di documento utilizzare. Tipi di virgolette disponibili:
Flag aggiuntivi per il tipo di documento utilizzato:
|
character-set |
Opzionale. Valore stringa che specifica il set di caratteri da utilizzare. Valori ammessi:
Commento:Nelle versioni precedenti al PHP 5.4, i set di caratteri non riconosciuti vengono ignorati e sostituiti con ISO-8859-1. Dalla versione PHP 5.4 in poi, i set di caratteri non riconosciuti vengono ignorati e sostituiti con UTF-8. |
Dettagli tecnici
Valore di ritorno: | Restituisce la stringa convertita |
Versione PHP: | 4.3.0+ |
Log delle modifiche:
Versione | Descrizione |
---|---|
PHP 5 | character-set Il valore predefinito del parametro è stato cambiato in UTF-8. |
PHP 5.4 |
Aggiunti flag aggiuntivi per specificare il tipo di documento applicabile alla tabella di traduzione:
|
PHP 5.3.4 | Aggiunta del supporto per la codifica a più byte. |
Più esempi
Esempio 1
Converti gli entity HTML in caratteri:
<?php $str = "Bill & 'Steve'"; echo html_entity_decode($str, ENT_COMPAT); // Converti solo virgolette doppi echo "<br>"; echo html_entity_decode($str, ENT_QUOTES); // Converti virgolette doppi e singole echo "<br>"; echo html_entity_decode($str, ENT_NOQUOTES); // Non convertire nessuna virgoletta ?>
Output HTML del codice sopra (vedere il codice sorgente):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
Output del browser del codice sopra:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
Esempio 2
Converti gli entity HTML in caratteri utilizzando il set di caratteri dell'Europa occidentale:
<?php $str = "My name is Øyvind Åsane. I'm Norwegian."; echo html_entity_decode($str, ENT_QUOTES, "ISO-8859-1"); ?>
Output HTML del codice sopra (vedere il codice sorgente):
<!DOCTYPE html> <html> <body> Il mio nome è ?yvind ?sane. Sono norvegese. </body> </html>
Output del browser del codice sopra:
Il mio nome è ?yvind ?sane. Sono norvegese.