Fonction html_entity_decode() en PHP
Exemple
Convertir les entités HTML en caractères :
<?php $str = "<© W3Sçh°°¦§>"; echo html_entity_decode($str); ?>
La sortie HTML du code suivant est la suivante (consulter le code source) :
<!DOCTYPE html> <html> <body> <? W3S?h????> </body> </html>
Sortie du navigateur du code suivant :
<? W3S?h????>
Définition et utilisation
La fonction html_entity_decode() convertit les entités HTML en caractères.
La fonction html_entity_decode() est htmlentities() Inverse de la fonction.
Syntaxe
html_entity_decode(string,flags,character-set)
Paramètre | Description |
---|---|
string | Obligatoire. Spécifie la chaîne à décoder. |
flags |
Optionnel. Spécifie comment traiter les guillemets et quel type de document utiliser. Types de guillemets disponibles :
Spécifie les flags supplémentaires utilisés pour le type de document :
|
character-set |
Optionnel. Valeur de chaîne, spécifiant le jeu de caractères à utiliser. Valeurs autorisées :
Remarque :Dans les versions de PHP 5.4 et antérieures, les jeux de caractères non reconnus sont ignorés et remplacés par ISO-8859-1. Depuis PHP 5.4, les jeux de caractères non reconnus sont ignorés et remplacés par UTF-8. |
Détails techniques
Retour : | Retourne la chaîne convertie |
Version PHP : | 4.3.0+ |
Journal des mises à jour :
Version | Description |
---|---|
PHP 5 | character-set La valeur par défaut du paramètre est modifiée en UTF-8. |
PHP 5.4 |
Ajouté des flags supplémentaires pour spécifier le type de document applicable à la table de traduction :
|
PHP 5.3.4 | Ajout du support pour le codage de multiples octets. |
Plus d'exemples
Exemple 1
Convertir les entités HTML en caractères :
<?php $str = "Bill & 'Steve'"; echo html_entity_decode($str, ENT_COMPAT); // Ne convertir que les guillemets doubles echo "<br>"; echo html_entity_decode($str, ENT_QUOTES); // Convertir les guillemets doubles et simples echo "<br>"; echo html_entity_decode($str, ENT_NOQUOTES); // Ne convertir aucune citation ?>
Sortie HTML du code suivant (voir le code source) :
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
Sortie du navigateur du code suivant :
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
Exemple 2
En utilisant le jeu de caractères de l'Europe occidentale, convertir les entités HTML en caractères :
<?php $str = "My name is Øyvind Åsane. I'm Norwegian."; echo html_entity_decode($str, ENT_QUOTES, "ISO-8859-1"); ?>
Sortie HTML du code suivant (voir le code source) :
<!DOCTYPE html> <html> <body> Mon nom est ?yvind ?sane. Je suis Norvégien. </body> </html>
Sortie du navigateur du code suivant :
Mon nom est ?yvind ?sane. Je suis Norvégien.