Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Pengekodan JSON Saya Mengembalikan NULL untuk Medan Penerangan?
Pengekodan JSON Mengembalikan Null untuk Medan Penerangan
Dalam senario ini, medan "penerangan" mengembalikan NULL dalam output yang dikodkan JSON. Pada mulanya, kod mengekstrak data daripada jadual pangkalan data menggunakan pertanyaan MySQL dan menyimpannya dalam tatasusunan. Selepas itu, kandungan tatasusunan adalah berkod JSON.
Memeriksa jadual pangkalan data mendedahkan skema yang merangkumi medan "penerangan". Walau bagaimanapun, output JSON tidak termasuk sebarang data untuk medan ini.
Isu ini berkemungkinan besar berkaitan dengan pengekodan aksara:
Isu Pengekodan Aksara
Set aksara pangkalan data dan pengekodan aksara PHP mungkin berbeza. Adalah dinasihatkan untuk menetapkan sambungan pangkalan data dan pertanyaan untuk menggunakan pengekodan UTF-8 secara eksplisit menggunakan kod berikut sebelum pertanyaan PILIH:
mysql_query('SET CHARACTER SET utf8');
Impak Pengekodan Aksara
Pengekodan aksara mentakrifkan cara aksara diwakili dalam fail teks atau pangkalan data. Ketidakpadanan antara pengekodan boleh membawa kepada pengambilan atau paparan data yang salah.
Dengan menetapkan set aksara kepada UTF-8 dalam kedua-dua sambungan pangkalan data dan pertanyaan, anda memastikan bahawa data yang diambil sepadan dengan set aksara yang dijangkakan oleh skrip PHP untuk pengekodan dalam JSON. Ini sepatutnya menyelesaikan isu NULL untuk medan "huraian".
Atas ialah kandungan terperinci Mengapa Pengekodan JSON Saya Mengembalikan NULL untuk Medan Penerangan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!