Maison >développement back-end >tutoriel php >La méthode PHP json_decode ne peut pas analyser le caractère spécial du point d'interrogation
Lorsque vous demandez des informations via les interfaces d'autres personnes, vous pouvez parfois rencontrer certains caractères, comme la situation suivante, et json_decode renverra null
Cependant, cette situation n'est généralement pas due au problème d'encodage global. lors de l'analyse, il est analysé en codage utf-8
Dans ce cas, le chinois et l'anglais coexistent généralement, mais certains caractères vides ne peuvent pas être reconnus.
Grâce à l'observation de la logique du système, cela devrait être dû à la présence de caractères qui ne sont pas reconnus par utf-8 lors de l'enregistrement des caractères dans la section précédente. Cette situation n'est pas affectée dans json_encode, donc directement. mène à l'interface pour obtenir des données. Lorsqu'un caractère illégal
apparaît, la solution :
$return_data=mb_convert_encoding($return_data, "UTF-8","UTF-8");
effectue un encodage forcé sur les caractères renvoyés via la requête curl. Le texte original codé en utf-8 ne sera pas affecté, les caractères qui ne peuvent pas être reconnus par utf-8 seront forcés d'être analysés et les caractères analysés deviendront des symboles anglais ?,
De cette façon, json_decode peut être facilement effectué
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!