
Envoyé par
snaileater
Quand je passe la fonction UTF8_decode il ne se passe strictement rien (la chaine reste identique à l'original) et je ne retrouve pas mes beaux petits accents...
Normal, car la chaîne "jsonée" n'est pas encodée en utf8. Les caractères spéciaux qu'elle contient sont "décrits" à l'aide des séquences d'échappement "\u". Pour retrouver tes accents, il faut que tu passes par json_decode() ou écrire ta propre fonction qui transforme les \u en chars réels. A moins que tu sois avec php6 qui embarque des fonctions unicode_* spéciales pour faire ce genre de conversion.
Essai ça:
$s = preg_replace('/\\\u([0-9A-F]{4})/ei', "chr(hexdec('\\1'))", $chaine);
Partager