Bagaimana untuk memadam elemen kosong dalam tatasusunan dalam php

PHPz
Lepaskan: 2023-04-18 09:40:27
asal
618 orang telah melayarinya

Dalam pengaturcaraan PHP, memadamkan elemen kosong dalam tatasusunan adalah operasi yang sangat biasa. Menapis nilai nol dalam tatasusunan boleh menjadikan data tatasusunan lebih jelas dan memudahkan pemprosesan dan penggunaan seterusnya. Artikel ini akan memperkenalkan pembaca kepada beberapa kaedah memadam elemen kosong dalam tatasusunan.

Gunakan fungsi array_filter()

array_filter() ialah fungsi dalam fungsi PHP terbina dalam untuk menapis tatasusunan Fungsi ini menggunakan fungsi panggil balik untuk menapis elemen tatasusunan dan mengembalikan tatasusunan yang ditapis. Menggunakan fungsi ini, kita boleh mengalih keluar nilai nol dengan mudah daripada tatasusunan.

Berikut ialah kod sampel yang menggunakan fungsi array_filter() untuk menapis nilai nol:

$arr = array('apple', '', 'banana', null, 'cherry');
$res = array_filter($arr, function($val) {
    return !empty($val);
});
print_r($res);
Salin selepas log masuk

Keluaran kod sampel di atas ialah:

Array
(
    [0] => apple
    [2] => banana
    [4] => cherry
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Untuk Kod contoh di atas, mula-mula kita cipta tatasusunan $arr yang mengandungi nilai nol, kemudian gunakan fungsi array_filter() untuk menapis tatasusunan, gunakan fungsi Lambda sebagai fungsi panggil balik, untuk setiap elemen dalam tatasusunan, semak sama ada elemen is empty , menambah elemen bukan kosong pada tatasusunan hasil.

Gunakan fungsi unset() untuk memadam

Gunakan fungsi unset() untuk memadam nilai null ​​​​dalam tatasusunan secara terus semasa proses menggelung tatasusunan.

Berikut ialah contoh kod yang menggunakan fungsi unset() untuk memadamkan nilai nol:

$arr = array('apple', '', 'banana', null, 'cherry');
foreach($arr as $key => $val) {
    if(empty($val)) {
        unset($arr[$key]);
    }
}
print_r($arr);
Salin selepas log masuk

Output kod sampel di atas ialah:

Array
(
    [0] => apple
    [2] => banana
    [4] => cherry
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Untuk contoh di atas Dalam kod, kami menggunakan gelung foreach pada tatasusunan $arr, dan menggunakan syarat if untuk menentukan sama ada setiap nilai dalam tatasusunan Jika ya, gunakan unset() untuk memadamkan elemen.

Gunakan fungsi array_diff()

Gunakan fungsi array_diff() untuk mengalih keluar nilai nol daripada tatasusunan dengan mudah.

Berikut ialah kod sampel yang menggunakan fungsi array_diff() untuk mengalih keluar nilai nol:

$arr = array('apple', '', 'banana', null, 'cherry');
$filtered = array_diff($arr, array('', null));
print_r($filtered);
Salin selepas log masuk

Keluaran kod sampel di atas ialah:

Array
(
    [0] => apple
    [2] => banana
    [4] => cherry
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Untuk kod sampel di atas, kami menggunakan fungsi array_diff() untuk membandingkan tatasusunan $arr dan tatasusunan tatasusunan('', null), dan padamkan persimpangan antara dua tatasusunan, iaitu, padamkan nilai nol.

Kesimpulan

Artikel ini memperkenalkan tiga kaedah dalam PHP untuk memadamkan elemen kosong dalam tatasusunan Kaedah ini boleh dipilih dan digunakan mengikut situasi tertentu. Tidak kira kaedah yang digunakan, pemadaman nilai nol dalam tatasusunan boleh menjadikan data tatasusunan lebih jelas dan memudahkan pemprosesan dan penggunaan seterusnya.

Dalam pembangunan sebenar, kita boleh memilih untuk menggunakan kaedah yang berbeza mengikut keperluan yang berbeza. Dari segi prestasi dan kesan, menggunakan fungsi array_diff() dan fungsi array_filter() adalah lebih cekap, manakala menggunakan fungsi unset() memerlukan perhatian untuk mengubah suai nilai kunci elemen untuk mengelakkan hasil yang tidak dijangka.

Atas ialah kandungan terperinci Bagaimana untuk memadam elemen kosong dalam tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!