Dalam proses menggunakan PHP untuk membangunkan projek, anda mungkin menghadapi amaran ini:
Amaran PHP: Argumen tidak sah dibekalkan untuk foreach()
Amaran ini biasanya disebabkan oleh The foreach () fungsi diluluskan dalam parameter bukan tatasusunan, menyebabkan PHP tidak dapat melaksanakan operasi lelaran, sekali gus memberikan amaran ini. Jadi, bagaimana untuk menyelesaikan masalah ini? Artikel ini akan memperkenalkan anda kepada beberapa penyelesaian yang mungkin.
Untuk parameter yang diluluskan oleh fungsi foreach(), anda perlu menilai secara eksplisit untuk memastikan bahawa ia adalah tatasusunan menaip. Anda boleh menggunakan fungsi terbina dalam PHP is_array() atau fungsi gettype() untuk melengkapkan penghakiman ini. Contohnya:
if (is_array($arr)) { foreach ($arr as $val) { // do something } } else { // 参数非数组,抛出异常或者返回错误码 }
Merentasi tatasusunan kosong dalam foreach() juga akan mencetuskan amaran yang serupa, jadi anda perlu Tentukan sama ada tatasusunan kosong. Ini boleh dicapai menggunakan fungsi kosong(). Contohnya:
if (!empty($arr)) { foreach ($arr as $val) { // do something } } else { // 数组为空,抛出异常或者返回错误码 }
Jika parameter yang dihantar mungkin kosong, anda boleh menggunakan operator atau sebelum fungsi foreach() untuk menetapkan parameter Berikan nilai lalai. Contohnya:
foreach ($arr ?? [] as $val) { // do something }
Dengan cara ini, walaupun $arr kosong, jika operator ?? digunakan, amaran tidak akan dicetuskan dalam foreach().
Akhir sekali, perlu diingatkan bahawa terdapat banyak fungsi dalam PHP yang mungkin menjana amaran, bukan hanya fungsi foreach(). Semasa menulis kod, anda perlu membaca dokumentasi fungsi dengan teliti untuk memahami penggunaan fungsi dan kemungkinan amaran supaya anda boleh menilai dan mengendalikannya apabila menggunakannya.
Ringkasnya, terdapat berbilang penyelesaian kepada Amaran PHP: Argumen tidak sah dibekalkan untuk foreach(). Apabila menulis kod PHP, anda perlu memberi perhatian khusus kepada kesahihan parameter yang dihantar ke dalam fungsi untuk mengelakkan amaran serupa.
Atas ialah kandungan terperinci Penyelesaian kepada Amaran PHP: Argumen tidak sah dibekalkan untuk foreach(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!