Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membuang elemen kosong dari tatasusunan php

Bagaimana untuk membuang elemen kosong dari tatasusunan php

PHPz
PHPzasal
2023-04-18 09:46:27510semak imbas

Dalam pembangunan, operasi tatasusunan adalah sangat biasa, dan kadangkala terdapat beberapa elemen kosong dalam tatasusunan ini tidak mempunyai kesan praktikal pada pembangunan kami, malah mungkin menyebabkan ralat yang tidak dapat diramalkan. Oleh itu, kita perlu menghapuskan elemen kosong dalam tatasusunan dalam PHP untuk pembangunan yang lebih baik.

1. Apakah elemen kosong?

Dalam tatasusunan PHP, elemen kosong bermaksud elemen dalam tatasusunan tidak mempunyai nilai. Dalam PHP, nilai nol merujuk kepada: null, false, rentetan kosong, tatasusunan kosong dan 0. Oleh itu, elemen berikut adalah semua elemen kosong:

$emptyArray = [];
$nullValue = null;
$falseValue = false;
$emptyString = '';
$zeroValue = 0;

2. Bagaimana untuk membuang elemen kosong

PHP menyediakan banyak kaedah untuk membuang elemen kosong daripada tatasusunan. Berikut ialah kaedah yang biasa digunakan:

  1. Gunakan fungsi array_filter()

array_filter() ialah fungsi yang disediakan oleh PHP yang boleh menapis elemen dalam tatasusunan dan mengembalikan tatasusunan yang ditapis. Berikut ialah contoh menggunakan fungsi array_filter() untuk mengalih keluar elemen kosong:

$array = ['foo', null, 'bar', '', 'baz', false, ''];
$array = array_filter($array);
print_r($array);

Hasil output ialah:

Array (
    [0] => foo
    [2] => bar
    [4] => baz
)

Seperti yang anda lihat, tatasusunan yang diproses telah dialih keluar unsur kosong.

  1. Gunakan gelung foreach untuk melintasi dan mengeluarkan elemen kosong

Selain menggunakan fungsi array_filter(), kita juga boleh menggunakan gelung foreach untuk melintasi dan mengalih keluar elemen kosong semasa proses lintasan. Berikut ialah contoh menggunakan gelung foreach untuk menghapuskan elemen kosong:

$array = ['foo', null, 'bar', '', 'baz', false, ''];
$newArray = [];
foreach ($array as $value) {
  if (!empty($value)) {
    $newArray[] = $value;
  }
}
print_r($newArray);

Hasil output ialah:

Array (
    [0] => foo
    [1] => bar
    [2] => baz
)

Berbanding dengan menggunakan fungsi array_filter(), menggunakan gelung foreach untuk hapuskan elemen kosong Memerlukan lebih banyak kod, tetapi membenarkan lebih fleksibiliti dengan tatasusunan.

3. Nota

  1. Jika tatasusunan mengandungi 0 jenis rentetan, selepas menggunakan fungsi array_filter() untuk mengeluarkannya, 0 jenis rentetan juga akan dianggap sebagai kosong. elemen dan oleh itu memerlukan perhatian khusus.
  2. Jika tatasusunan mengandungi elemen tatasusunan, menggunakan fungsi array_filter() hanya akan mengalih keluar tatasusunan kosong, tetapi tidak boleh memproses elemen kosong dalam tatasusunan.
  3. Untuk situasi yang mengandungi berbilang peringkat tatasusunan bersarang, ia akan menjadi lebih menyusahkan untuk dikendalikan. Ia adalah perlu untuk melintasi tatasusunan beberapa kali dan memprosesnya langkah demi langkah.

4. Ringkasan

Dalam PHP, mengalih keluar elemen kosong daripada tatasusunan ialah keperluan biasa termasuk menggunakan fungsi array_filter() dan foreach loop traversal. Apabila mengalih keluar elemen kosong, anda perlu memberi perhatian kepada jenis rentetan 0 dan situasi tatasusunan bersarang berbilang peringkat. Dalam perkembangan sebenar, kita boleh memilih kaedah yang sesuai mengikut situasi tertentu.

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

Kenyataan:
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