[PREG_REPLACE] Problème avec \\1
Mathieu
-
Mathieu -
Mathieu -
Bonjours à tous
voilà j'ai un problème lorsque je veux décodé de l'HTML
voici un exemple:
echo preg_replace("~&#([0-9a-f]+);~", chr(hexdec("\\1")), "&");
il me sort un carré o_O sans doute qu'il encode \\1 est pas le 038 qu'il deverait me sorti, car l'encodage de 038 en ASCII donne &
si je retire chr et hexdec je vois bien 038
pourriez vous m'expliquer comment palier à ce problème?
ps: sur le site de php.net ils font un exemple avec perg_replace mais en testant (copier coller) j'ai le même resultat qu'ici! (le carré :o)
je vous remerci déjà pour avoir lu mon sujet, et je vous remerci d'avance pour vos nombreuses réponses qui me permetteront d'avancé, tant sur le plan de la langue française que sur le plan de la programmation ;)
voilà j'ai un problème lorsque je veux décodé de l'HTML
voici un exemple:
echo preg_replace("~&#([0-9a-f]+);~", chr(hexdec("\\1")), "&");
il me sort un carré o_O sans doute qu'il encode \\1 est pas le 038 qu'il deverait me sorti, car l'encodage de 038 en ASCII donne &
si je retire chr et hexdec je vois bien 038
pourriez vous m'expliquer comment palier à ce problème?
ps: sur le site de php.net ils font un exemple avec perg_replace mais en testant (copier coller) j'ai le même resultat qu'ici! (le carré :o)
je vous remerci déjà pour avoir lu mon sujet, et je vous remerci d'avance pour vos nombreuses réponses qui me permetteront d'avancé, tant sur le plan de la langue française que sur le plan de la programmation ;)
4 réponses
j'ai trouvé ;)
echo preg_replace("~&#([0-9a-f]+);~", 'chr(hexdec("\\1"))', "&");
suffit de rajouté des ' ;)
je vous remerci quand même...
echo preg_replace("~&#([0-9a-f]+);~", 'chr(hexdec("\\1"))', "&");
suffit de rajouté des ' ;)
je vous remerci quand même...
avec l'option e ;)
Voici:
echo preg_replace("~&#([0-9a-f]+);~e", 'chr(hexdec("\\1"))', "&");
j'espère que ça aidera des personnes :) (j'en suis sure)
Voici:
echo preg_replace("~&#([0-9a-f]+);~e", 'chr(hexdec("\\1"))', "&");
j'espère que ça aidera des personnes :) (j'en suis sure)
str_replace() retourne une chaîne ou un tableau, dont toutes les occurrences de search dans subject ont été remplacées par replace. Si vous n'avez pas besoin de règles de remplacement compliquées, utilisez cette fonction de préférence à ereg_replace() et preg_replace().
;) je pense que c'est pas le cas présent, mais merci de le souligné ;)
;) je pense que c'est pas le cas présent, mais merci de le souligné ;)