Apabila mengekod tatasusunan menggunakan json_encode(), kekunci angka kadangkala boleh membawa kepada rentetan JSON yang terhasil yang mengandungi objek dan bukannya tatasusunan. Isu ini timbul kerana tatasusunan JavaScript memerlukan pengindeksan berangka berturut-turut.
Untuk menyelesaikan masalah ini tanpa menggunakan manipulasi regex, gunakan array_values() pada struktur tatasusunan luar. Fungsi ini menghapuskan kekunci asal dan menggantikannya dengan penomboran berturut-turut berasaskan sifar. Berikut ialah contoh:
// Non-consecutive numeric keys in a PHP array $array = array( 2 => array("Afghanistan", 32, 13), 4 => array("Albania", 32, 12) ); // Remove original keys and create consecutive numbers $out = array_values($array); // Encode the modified array echo json_encode($out); // Output: [[Afghanistan, 32, 13], [Albania, 32, 12]]
Pendekatan ini memastikan rentetan JSON yang dikodkan ialah tatasusunan, seperti yang dijangkakan.
Atas ialah kandungan terperinci Bagaimana untuk Mengekodkan Tatasusunan PHP dengan Kekunci Angka Bukan Berturut-turut sebagai Tatasusunan JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!