Menemui aksara Cina yang kacau semasa memproses data JSON dalam PHP adalah masalah biasa Ini biasanya disebabkan oleh pengekodan aksara yang tidak konsisten semasa proses pengekodan atau penyahkodan JSON. Terdapat banyak cara untuk menyelesaikan masalah ini, beberapa penyelesaian biasa diperkenalkan di bawah, dengan contoh kod khusus.
Apabila mengeluarkan data JSON ke hujung hadapan, anda boleh menetapkan maklumat pengepala dalam fail PHP untuk menentukan pengekodan aksara sebagai UTF-8 untuk memastikan data tidak bercelaru semasa penghantaran.
header('Content-Type: application/json; charset=utf-8'); $jsonData = json_encode($data, JSON_UNESCAPED_UNICODE); echo $jsonData;
Jika data JSON bercelaru semasa proses pengekodan atau penyahkodan, anda boleh menukar data kepada pengekodan aksara secara manual.
$jsonString = '{"name":"张三","age":25}'; $jsonStringUtf8 = mb_convert_encoding($jsonString, 'UTF-8', 'UTF-8'); $data = json_decode($jsonStringUtf8, true);
Gunakan pilihan json_encode()
函数时,可以使用JSON_UNESCAPED_UNICODE
untuk memastikan aksara Cina tidak terlepas untuk mengelakkan aksara yang bercelaru.
$data = array('name' => '张三', 'age' => 25); $jsonData = json_encode($data, JSON_UNESCAPED_UNICODE);
Sebelum menghuraikan data JSON, anda boleh menetapkan pengekodan aksara secara manual kepada UTF-8.
$jsonString = file_get_contents('data.json'); $jsonStringUtf8 = iconv('GB2312', 'UTF-8', $jsonString); $data = json_decode($jsonStringUtf8, true);
Melalui kaedah di atas, masalah aksara Cina bercelaru yang dihadapi semasa memproses data JSON dalam PHP dapat diselesaikan dengan baik. Memilih kaedah yang sesuai bergantung pada situasi tertentu Dengan menetapkan maklumat pengepala, menukar pengekodan aksara secara manual, menggunakan pilihan JSON_UNESCAPED_UNICODE atau menetapkan pengekodan aksara secara manual, anda boleh menyelesaikan masalah bercelaru bahasa Cina dengan berkesan dan memastikan data tidak muncul semasa. proses pengekodan dan penyahkodan JSON.
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika saya menemui aksara Cina yang kacau semasa memproses data JSON dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!