Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menyelesaikan Ralat \'Jenis Offset Tidak Sah\' dalam PHP Apabila Mengulang Melalui Tatasusunan?
Membetulkan Ralat Jenis Offset Haram
Masalah:
Anda menghadapi "jenis offset haram " ralat semasa melelaran melalui tatasusunan, mengakses elemen menggunakan objek atau tatasusunan sebagai kunci indeks. Berikut ialah contoh kod yang mencetuskan ralat:
<code class="php">$s = array(); for($i = 0; $i < 20; $i++){ $source = $xml->entry[$i]->source; $s[$source] += 1; } print_r($s);</code>
Jawapan:
Ralat jenis offset yang tidak sah berlaku apabila mengakses indeks tatasusunan menggunakan objek atau tatasusunan sebagai kunci indeks.
<code class="php">$x = new stdClass(); $arr = array(); echo $arr[$x]; // Example: Illegal offset type</code>
Dalam kod anda, ralat berlaku kerana $xml->entry[$i]->source mungkin objek atau tatasusunan untuk beberapa nilai $i. Apabila anda cuba menggunakannya sebagai kunci indeks untuk $s, anda menghadapi ralat jenis offset yang menyalahi undang-undang.
Untuk menyelesaikan masalah ini, sahkan kandungan dan struktur $xml untuk memastikan anda mengaksesnya dengan betul dan itu ia mengandungi perkara yang anda harapkan.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'Jenis Offset Tidak Sah\' dalam PHP Apabila Mengulang Melalui Tatasusunan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!