Convertir chaine en code type o ou #x6A;

WRInaute accro
Bonjour,

Je cherche, en PHP, le moyen de convertir une chaine de caractères en "caractère numériques hex" ou en "caractère numériques décimaux".
Exemple de convertisseur : http://hapax.qc.ca/conversion.fr.html
Ainsi, "Bonjour" devient Bonjour ou Bonjour

Après des recherches, je ne trouve rien qui aille dans ce sens. Connaissez vous un moyen d'y arriver ?

Je ne souhaite convertir et afficher comme ceci qu'une phrase dans mon code, est-ce que ça risque de poser problème au niveau de l'affichage ?
Pour être sur d'être clair, je veux que le code source affiche Bonjour et que le navigateur affiche Bonjour, le tout dans une page codée en UTF-8

Help really appreciated.

Merci
 
WRInaute passionné
he ben tu prend la table ascii et tu fait la liste des str_replace a faire, ou bien sinon, tu utilise htmlentities qui t'encode seulement ce qui est utilise d'encoder.

Pourquoi ne veut tu pas encoder avec htmlentities ?
 
WRInaute accro
Merci.
ord() semblait me convenir mais pour tout un paragraphe il me renvoie juste "60".
htmlentities ça ne converti pas les lettres non ?

Effectivement il va falloir passer par des str_replace. C'est fou qu'il n'y ait pas de fonction toute prete pour ça non ?

Le truc, c'est que je veux l'inverse d'htmlentities : je veux garder < et > intacts mais convertir les lettres et chiffres !
 
WRInaute accro
L'inverse de htmlentities() c'est html_entity_decode()
Code:
<?php 
$content = '&#66;&#111;&#110;&#106;&#111;&#117;&#114; ou &#x42;&#x6F;&#x6E;&#x6A;&#x6F;&#x75;&#x72;';
echo html_entity_decode($content);
?>

Affiche:
Bonjour ou Bonjour
 
WRInaute passionné
he ben, tu fait d'abord htmlentities, et ensuite htmlspecialchars_decode pour juste remettre bien les caracteres speciaux html et non les lettres.
 
WRInaute accro
Ecoutez je dois être totalement stupide car htmlentities ne me converti que les caractères spéciaux et en entité HTML (exemple € en &euro;).
En fait je cherche l'exact inverse de html_entity_decode(), enfin je pense.
Comment as tu obtenu ton &#66;&#111;&#110;&#106;&#111;&#117;&#114; Spout ?
 
WRInaute passionné
milkiway a dit:
Ecoutez je dois être totalement stupide car htmlentities ne me converti que les caractères spéciaux et en entité HTML (exemple € en &euro;).
En fait je cherche l'exact inverse de html_entity_decode(), enfin je pense.
Comment as tu obtenu ton &#66;&#111;&#110;&#106;&#111;&#117;&#114; Spout ?
ben c'est normal, les lettres normales n'ont pas besoin d'etre encodé, c'est la base du code ascii, donc aucun probleme de compatibilité avec les differents charsets.

Peut tu au moins nous expliquer le but final de cette manoeuvre? car là on voit pas l'interet pour tu te prend la tete?
 
WRInaute accro
forummp3 a dit:
milkiway a dit:
Ecoutez je dois être totalement stupide car htmlentities ne me converti que les caractères spéciaux et en entité HTML (exemple € en &euro;).
En fait je cherche l'exact inverse de html_entity_decode(), enfin je pense.
Comment as tu obtenu ton &#66;&#111;&#110;&#106;&#111;&#117;&#114; Spout ?
ben c'est normal, les lettres normales n'ont pas besoin d'etre encodé, c'est la base du code ascii, donc aucun probleme de compatibilité avec les differents charsets.

Peut tu au moins nous expliquer le but final de cette manoeuvre? car là on voit pas l'interet pour tu te prend la tete?
Merci, je sais parfaitement qu'il n'est pas NECESSAIRE de le faire.
Je veux juste le faire.

Spout, merci je teste ça ;)
 
Discussions similaires
Haut