Dalam PHP, tatasusunan ialah struktur data yang sangat biasa yang boleh digunakan untuk menyimpan berbilang nilai, dan nilai ini boleh terdiri daripada sebarang jenis. Dalam aplikasi sebenar, kami sering menghadapi situasi: rentetan kosong muncul dalam tatasusunan, dan kami ingin mengalih keluarnya daripada tatasusunan untuk memproses data lain dengan lebih baik. Artikel ini akan memperkenalkan cara mengalih keluar rentetan kosong daripada tatasusunan menggunakan PHP.
PHP menyediakan pelbagai kaedah untuk mengalih keluar rentetan kosong daripada tatasusunan Berikut ialah beberapa kaedah yang paling popular:
Kaedah 1: Gunakan fungsi penapis_tatasusunan
Fungsi penapis_tatasusunan. ialah Fungsi yang sangat berguna dalam PHP, yang boleh digunakan untuk menapis tatasusunan. Fungsi ini mengembalikan tatasusunan baharu yang mengandungi hanya elemen dalam tatasusunan asal yang memenuhi syarat yang ditetapkan.
Kami boleh menapis rentetan kosong dalam tatasusunan dengan menentukan fungsi panggil balik menggunakan fungsi array_filter. Fungsi panggil balik perlu menerima setiap elemen tatasusunan sebagai parameter dan mengembalikan nilai Boolean. Jika nilai boolean ini benar, maka elemen akan dikekalkan dalam tatasusunan baharu, jika tidak, elemen itu akan dialih keluar daripada tatasusunan baharu.
Berikut ialah contoh menggunakan fungsi array_filter untuk mengalih keluar rentetan kosong dalam tatasusunan:
// 示例数组 $arr = array("hello", "world", "", "php", "", "is", "cool"); // 使用 array_filter 过滤空字符串 $filtered_arr = array_filter($arr, function($value) { return $value !== ""; }); // 打印结果 print_r($filtered_arr);
Dalam contoh di atas, kami mencipta tatasusunan $arr yang mengandungi rentetan kosong. Menggunakan fungsi array_filter, kami mengeluarkan rentetan kosong daripada tatasusunan ini dan menyimpannya dalam pembolehubah $filtered_arr. Akhir sekali, gunakan fungsi print_r untuk mencetak hasilnya.
Kaedah 2: Gunakan foreach untuk melintasi tatasusunan dan memadam rentetan kosong
Cara lain ialah menggunakan gelung foreach untuk melintasi tatasusunan dan gunakan fungsi tidak ditetapkan untuk mengalih keluar rentetan kosong. Berikut ialah contoh menggunakan gelung foreach untuk mengalih keluar rentetan kosong daripada tatasusunan:
// 示例数组 $arr = array("hello", "world", "", "php", "", "is", "cool"); // 遍历数组并移除空字符串 foreach($arr as $key => $value) { if($value === "") { unset($arr[$key]); } } // 重新排序并打印结果 $arr = array_values($arr); print_r($arr);
Dalam contoh di atas, kita mula-mula mencipta tatasusunan $arr yang mengandungi rentetan kosong. Dalam gelung foreach, kami menggunakan pernyataan if untuk menentukan sama ada elemen semasa ialah rentetan kosong. Jika ya, kami menggunakan fungsi unset untuk mengalih keluar elemen. Akhir sekali, kami menggunakan fungsi array_values untuk menyusun semula tatasusunan dan mencetak hasilnya.
Kaedah 3: Gunakan fungsi array_walk
Akhir sekali, kami memperkenalkan kaedah menggunakan fungsi array_walk. Fungsi ini akan berulang melalui setiap elemen dalam tatasusunan dan memanggil fungsi panggil balik yang ditentukan pengguna untuk memproses setiap elemen.
Kami boleh menentukan sama ada elemen semasa ialah rentetan kosong dalam fungsi tersuai, dan jika ya, alih keluar elemen tersebut. Berikut ialah contoh menggunakan fungsi array_walk untuk mengalih keluar rentetan kosong daripada tatasusunan:
// 示例数组 $arr = array("hello", "world", "", "php", "", "is", "cool"); // 移除空字符串 function remove_empty_string(&$item, $key) { if($item === "") { unset($item); } } // 使用 array_walk 移除空字符串 array_walk($arr, 'remove_empty_string'); // 重新排序并打印结果 $arr = array_values($arr); print_r($arr);
Dalam contoh di atas, kita mula-mula mencipta tatasusunan $arr yang mengandungi rentetan kosong. Seterusnya, kami mentakrifkan fungsi panggil balik yang dipanggil remove_empty_string, yang mengalih keluar rentetan kosong. Akhir sekali, kami menggunakan fungsi array_walk untuk berjalan melalui tatasusunan dan memanggil fungsi panggil balik untuk setiap elemen dalam tatasusunan. Akhir sekali, kami menggunakan fungsi array_values untuk menyusun semula tatasusunan dan mencetak hasilnya.
Ringkasan
Dalam artikel ini, kami memperkenalkan cara untuk mengalih keluar rentetan kosong daripada tatasusunan dalam PHP. Kami memperkenalkan tiga kaedah berbeza: menggunakan fungsi array_filter, menggunakan gelung foreach untuk melintasi tatasusunan dan mengeluarkan rentetan kosong, dan menggunakan fungsi array_walk untuk mengalih keluar rentetan kosong. Tidak kira kaedah yang anda pilih, anda boleh mengalih keluar rentetan kosong dengan cepat dan mudah daripada tatasusunan, menjadikan kod anda lebih bersih dan lebih mudah dibaca.
Atas ialah kandungan terperinci Bagaimana untuk membuang rentetan kosong dari tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!