Dalam pembangunan PHP, tatasusunan selalunya perlu diproses. Salah satu soalan biasa ialah cara mengalih keluar elemen tidak kosong daripada tatasusunan. Dalam artikel ini, kami akan meneroka cara untuk mencapai tugas ini menggunakan PHP.
Pertama, mari kita lihat jenis tatasusunan biasa dalam PHP. PHP menyokong dua jenis tatasusunan: tatasusunan diindeks dan tatasusunan bersekutu. Tatasusunan diindeks ialah tatasusunan berdasarkan indeks angka, manakala tatasusunan bersekutu ialah tatasusunan berdasarkan kekunci rentetan. Berikut ialah tatasusunan contoh:
$arr = array("apple", "", "banana", "orange", null, "peach");
Dalam tatasusunan di atas, kita mempunyai berbilang elemen tidak kosong dan kosong. Tugas kami adalah untuk mengalih keluar elemen tidak kosong ini untuk mendapatkan tatasusunan kosong sepenuhnya.
Kaedah 1: Gunakan foreach loop dan fungsi unset
Kita boleh menggunakan foreach loop untuk melintasi keseluruhan tatasusunan dan menggunakan fungsi unset untuk memadamkan elemen bukan kosong. Begini caranya:
foreach ($arr as $key => $value) { if ($value !== "" && $value !== null) { unset($arr[$key]); } }
Dalam kod di atas, kami menggunakan gelung foreach untuk lelaran melalui keseluruhan tatasusunan. Jika nilai elemen bukan rentetan kosong atau null, gunakan fungsi unset untuk memadamkannya.
Kaedah 2: Gunakan fungsi array_filter
Kaedah lain ialah menggunakan array_filter fungsi terbina dalam PHP. Fungsi ini menerima tatasusunan dan mengembalikan tatasusunan baharu yang mengandungi hanya elemen yang panggilan balik itu mengembalikan benar. Kita boleh mentakrifkan fungsi panggil balik yang mengesahkan sama ada elemen itu kosong atau batal. Begini caranya:
function emptyFilter($value) { return $value !== "" && $value !== null; } $arr = array_filter($arr, "emptyFilter");
Dalam kod di atas, kami mentakrifkan fungsi panggil balik yang dipanggil emptyFilter. Fungsi ini menerima nilai dan mengembalikan benar atau salah. Jika nilai adalah rentetan kosong atau null, fungsi mengembalikan palsu. Seterusnya, kami menggunakan fungsi array_filter untuk menapis tatasusunan dan hanya menyimpan elemen di mana fungsi panggil balik kembali benar.
Ringkasan
Kami telah memperkenalkan dua kaedah biasa untuk mengalih keluar elemen bukan kosong daripada tatasusunan. Menggunakan gelung foreach dan fungsi unset mungkin tidak cekap apabila bekerja dengan tatasusunan besar, kerana operasi gelung dan pemadaman boleh menjejaskan prestasi. Sebaliknya, menggunakan fungsi array_filter adalah lebih berskala dan fleksibel, dan kriteria penapisan boleh disesuaikan dengan menghantar fungsi panggil balik yang berbeza. Kami berharap artikel ini membantu anda mengendalikan tatasusunan dengan lebih baik semasa pembangunan PHP.
Atas ialah kandungan terperinci php keluarkan elemen bukan kosong daripada tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!