Rumah > pembangunan bahagian belakang > tutorial php > Mengapakah Saya Mendapat Sebatan Terbalik Tidak Dijangka dalam Output JSON Saya dengan json_encode?

Mengapakah Saya Mendapat Sebatan Terbalik Tidak Dijangka dalam Output JSON Saya dengan json_encode?

DDD
Lepaskan: 2024-11-27 01:54:10
asal
978 orang telah melayarinya

Why Am I Getting Unexpected Backslashes in My JSON Output with json_encode?

Serikan Belakang Tidak Dijangka dalam Output JSON dengan json_encode

Semasa bekerja dengan json_encode untuk mengembalikan data JSON selepas muat naik fail, pengguna tertentu telah menemui penambahan garis miring ke belakang yang tidak perlu dalam output. Untuk menyelidiki isu ini, mari kita pecahkan masalah:

Coretan kod awal, yang menghasilkan JSON yang sah:

print_r($result);
echo json_encode($result);
Salin selepas log masuk

Walau bagaimanapun, setelah pemeriksaan lanjut melalui data.toSource(), ia adalah mendedahkan bahawa JSON tidak sah sedang dihasilkan, dengan garis miring ke belakang ditambah dan maklumat tambahan (mis., status:200) dilampirkan.

Punca Isu

Sengkang ke belakang tambahan dan maklumat luar mungkin diperkenalkan oleh proses di luar json_encode itu sendiri. Adalah dihipotesiskan bahawa fungsi Plupload bind mungkin memanipulasi data yang dikembalikan dalam beberapa cara.

Penyelesaian

Untuk menyelesaikan isu ini, disyorkan untuk memasukkan pilihan "JSON_UNESCAPED_SLASHES" apabila menggunakan json_encode. Pilihan ini, yang diperkenalkan dalam PHP versi 5.4 dan lebih baru, menghalang garis miring ke belakang daripada ditambahkan tanpa perlu. Kod yang diperbetulkan:

json_encode($array, JSON_UNESCAPED_SLASHES);
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapakah Saya Mendapat Sebatan Terbalik Tidak Dijangka dalam Output JSON Saya dengan json_encode?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan