Le "fucking manual" propose cette légendaire fonction inverse:
Code :
- function unhtmlentities ($string)
- {
- $trans_tbl = get_html_translation_table (HTML_ENTITIES);
- $trans_tbl = array_flip ($trans_tbl);
- return strtr ($string, $trans_tbl);
- }
|
mais il ne faut pas oublier que seules les entités y sont gérées, càd que les codages &#...; utilisant les rangs ascii ou Unicode doivent de toute façon faire l'objet d'un traitement spécifique par expression régulière. Il n'existe pas de conversion absolue pour la bonne raison que le jeu de caractères d'entrée est parfois plus étendu que celui de sortie.
Par exemple, l'apostrophe peut être rendue par son entité habituelle, mais aussi par le car U+27, mais aussi U+2019 (apos. typographique), voire U+2032 (prime) sur certains sites...