PHP : Convertir des entités numériques HTML en caractères

Le 5 mars 2013 — par

La fonction PHP qui permet de décoder les caractères HTML s’appelle html_entity_decode, mais elle ne permet pas de décoder les entités sous forme de référence numérique, comme é pour un é.

Voici une fonction qui permet d’effectuer ce décodage :

function decode_entities($text) {
    $text = html_entity_decode($text, ENT_QUOTES);
    $text = preg_replace('/&#(\d+);/me', "chr(\\1)", $text);
    $text = preg_replace('/&#x([a-f0-9]+);/mei', "chr(0x\\1)", $text);
    return $text;
}
S'abonner au flux RSS du blog
Recevoir les nouveaux articles par e-mail :