Funzione html_entity_decode() di PHP
Esempio
Converti le entità HTML predefinite "<" (minore di) e ">" (maggiore di) in caratteri:
<?php $str = "Questo è del testo in <b>grassetto</b>."; echo htmlspecialchars_decode($str); ?>
L'output HTML del codice sopra è il seguente (vedere il codice sorgente):
<!DOCTYPE html> <html> <body> Questo è del testo in <b>grassetto</b>. </body> </html>
L'output del browser del codice sopra è il seguente:
Questo è del testo in grassetto.
Definizione e uso
La funzione htmlspecialchars_decode() trasforma le entità HTML predefinite in caratteri.
Le entità HTML che verranno decodificate sono:
- & Decodificato in & (e)
- " Decodificato in " (virgoletta doppia)
- ' Decodificato in ' (virgoletta singola)
- < Decodificato in < (minore di)
- > Decodificato in > (maggiore di)
La funzione htmlspecialchars_decode() è l'antitesi della funzione htmlspecialchars().
Sintassi
htmlspecialchars_decode(string,flags)
Parametro | Descrizione |
---|---|
string | Obbligatorio. Regola la stringa da decodificare. |
flags |
Opzionale. Regola come elaborare le virgolette e quale tipo di documento utilizzare. Tipi di virgolette disponibili:
Flags aggiuntivi per il tipo di documento utilizzato:
|
Dettagli tecnici
Valore di ritorno: | Restituisce la stringa convertita. |
Versione PHP: | 5.1.0+ |
Log delle modifiche: |
In PHP 5.4, sono stati aggiunti flag aggiuntivi per definire il tipo di documento utilizzato:
|
Più esempi
Esempio 1
Converti gli enti HTML predefiniti in caratteri:
<?php $str = "Bill & 'Steve'"; echo htmlspecialchars_decode($str, ENT_COMPAT); // Converti solo virgolette doppie echo "<br>"; echo htmlspecialchars_decode($str, ENT_QUOTES); // Converti virgolette doppie e singole echo "<br>"; echo htmlspecialchars_decode($str, ENT_NOQUOTES); // Non convertire nessuna virgola ?>
L'output HTML del codice sopra è il seguente (vedere il codice sorgente):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
L'output del browser del codice sopra è il seguente:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
Esempio 2
Converti gli enti HTML predefiniti in virgolette doppie:
<?php $str = 'I love "PHP".'; echo htmlspecialchars_decode($str, ENT_QUOTES); // Converti virgolette doppie e singole ?>
L'output HTML del codice sopra è il seguente (vedere il codice sorgente):
<!DOCTYPE html> <html> <body> Mi piace "PHP". </body> </html>
L'output del browser del codice sopra è il seguente:
Mi piace "PHP".