Amaran PHP "Argumen tidak sah dibekalkan untuk foreach()" menunjukkan bahawa yang diberikan argumen bukan tatasusunan yang sah apabila melelaran menggunakan binaan foreach.
Amaran dicetuskan apabila hujah yang dihantar kepada foreach bukan tatasusunan. Ini boleh berlaku atas beberapa sebab:
<code class="php">// Invalid argument: not an array foreach ($nonArrayVariable as $item) { // Error } // Invalid argument: empty array $emptyArray = []; foreach ($emptyArray as $item) { // Error } // Invalid assignment: assigns a string instead of an array $someVariable = 'some-string'; foreach ($someVariable as $item) { // Error }</code>
Untuk menyelesaikan amaran ini, pastikan hujah yang dihantar kepada foreach ialah tatasusunan yang sah. Anda boleh melakukan ini dengan:
Berikut ialah contoh yang dikemas kini menggunakan is_array():
<code class="php">if (is_array($variable)) { foreach ($variable as $item) { // Now safe to iterate } }</code>
Atas ialah kandungan terperinci Mengapa Saya Mendapat Amaran \'Tidak sah untuk foreach()\' dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!