J'ai eu un problème similaire. J'ai essayé de faire défiler toutes les combinaisons de jeux de caractères d'entrée et de sortie. Rien n'a aidé! :(
Cependant j'ai pu accéder au code qui alla chercher réellement les données, ce qui est là le coupable a menti. Les données ont été rapatriée par cURL. Ajout
curl_setopt($ch,CURLOPT_BINARYTRANSFER,true);
le fixe.
Un ensemble pratique de code pour essayer toutes les combinaisons possibles d'une liste de jeux de caractères.?
$charsets = array(
"UTF-8",
"ASCII",
"Windows-1252",
"ISO-8859-15",
"ISO-8859-1",
"ISO-8859-6",
"CP1256"
);
foreach ($charsets as $ch1) {
foreach ($charsets as $ch2){
echo "<h1>Combination $ch1 to $ch2 produces: </h1>".iconv($ch1, $ch2, $text_2_convert);
}
}
« Votre situation est peu claire Où PHP venir en est le contenu que vous téléchargez code PHP Qu'est-ce que utilisez-vous pour voir le texte après? " -de la réponse de Jon Skeet ci-dessous –
Votre situation n'est pas claire. Où est-ce que PHP arrive? Est-ce que le contenu que vous téléchargez du code PHP? Qu'est-ce que vous utilisez pour voir le texte après? C'est presque certainement juste un cas de manipulation des données téléchargées dans l'encodage approprié. Cependant, vous aurez besoin de savoir quel est le codage (regardez les en-têtes HTTP pour une indication possible, même si elle n'a pas été correctement définie) et comment * utiliser * le bon encodage. Nous ne pouvons pas vous aider sur ce dernier point jusqu'à ce que nous sachions ce que vous faites avec les données après l'avoir récupéré. –