Php : encode/decodage de caractères ascii ver
Fermé
hdh
Messages postés
10
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
10 juin 2011
-
10 juin 2011 à 16:01
hdh Messages postés 10 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 10 juin 2011 - 10 juin 2011 à 17:23
hdh Messages postés 10 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 10 juin 2011 - 10 juin 2011 à 17:23
4 réponses
Zep3k!GnO
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
200
10 juin 2011 à 16:22
10 juin 2011 à 16:22
print "<hr>".htmlentities("é")."\n"; // é
Quand tu dis que ça t'affiches é, c'est normal car je suppose que tu regardes ça avec ton navigateur, donc ce dernier interprète l'entité html & eacute; pour te l'afficher. --> Affiches la source et tu verras l'entité.
Sinon fais un :
file_put_contents("./log_test.txt", htmlentities("é"))
Tu le verra dans le contenu du fichier !
hdh
Messages postés
10
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
10 juin 2011
10 juin 2011 à 16:28
10 juin 2011 à 16:28
bonjour
merci pour ta réponse : mon post est mal passé (mes caractères ont été réencodés) :-)
Hello
Je sèche sur un problème d'encodage : un fichier txt m'est fourni avec des caractères ascii (exemple "& # 2 3 3 ;" ) je voudrais parser le contenu de ce fichier pour remplacer tous les caractères ascii en entités html (dans mon exemple remplacer les "& # 2 3 3 ;" par des &ecute;).
je ne trouve pas la solution pour ascii bien que j'y arrive dans d'autres format/entités
c'est bien en effet qd j'affiche le code source que je continue à voir
merci pour ta réponse : mon post est mal passé (mes caractères ont été réencodés) :-)
Hello
Je sèche sur un problème d'encodage : un fichier txt m'est fourni avec des caractères ascii (exemple "& # 2 3 3 ;" ) je voudrais parser le contenu de ce fichier pour remplacer tous les caractères ascii en entités html (dans mon exemple remplacer les "& # 2 3 3 ;" par des &ecute;).
je ne trouve pas la solution pour ascii bien que j'y arrive dans d'autres format/entités
print "<hr>".htmlentities("é", ENT_QUOTES, "UTF-8")."\n"; // é print "<hr>".htmlentities("é")."\n"; // é
c'est bien en effet qd j'affiche le code source que je continue à voir
Bonjour
L'astuce est d'utiliser html_entity_decode pour transformer ton codage numérique en caractères simples, puis htmlentities pour retrouver les entités HTML nommées.
Utilise l'UTF-8 comme encodage intermédiaire, sinon, si ton texte contient des caractères dont le code est supérieur à 255; ils ne pourront pas être traduits
L'astuce est d'utiliser html_entity_decode pour transformer ton codage numérique en caractères simples, puis htmlentities pour retrouver les entités HTML nommées.
$a="éêëì"; $b=htmlentities(html_entity_decode($a,ENT_NOQUOTES,'UTF-8'),ENT_NOQUOTES,'UTF-8');
Utilise l'UTF-8 comme encodage intermédiaire, sinon, si ton texte contient des caractères dont le code est supérieur à 255; ils ne pourront pas être traduits
hdh
Messages postés
10
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
10 juin 2011
Modifié par hdh le 10/06/2011 à 17:23
Modifié par hdh le 10/06/2011 à 17:23
merci pour ta réponse : ca fonctionne impec .. en php5 car en php4 j'obtiens
Warning: cannot yet handle MBCS in html_entity_decode()! in xxxx
et le résultat affiché est
éêëì
très cool, merci pour ton aide aussi rapide qu'efficace ;-)
re-merci !
H
Warning: cannot yet handle MBCS in html_entity_decode()! in xxxx
et le résultat affiché est
éêëì
très cool, merci pour ton aide aussi rapide qu'efficace ;-)
re-merci !
H