Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php padam tatasusunan null

php padam tatasusunan null

王林
王林asal
2023-05-19 16:00:37470semak imbas

Dalam PHP, tatasusunan ialah jenis data yang sangat berguna yang boleh menyimpan sebarang nombor dan jenis elemen. Kadangkala kita perlu memadam beberapa elemen dalam tatasusunan, terutamanya nilai nol. Artikel ini akan memperkenalkan cara menggunakan PHP untuk memadamkan nilai nol dalam tatasusunan.

  1. Gunakan fungsi unset()

Fungsi unset() dalam PHP boleh digunakan untuk memadamkan elemen dalam tatasusunan. Jika kita ingin mengalih keluar nilai nol daripada tatasusunan, kita boleh melakukannya menggunakan fungsi unset().

Kod sampel adalah seperti berikut:

<?php 
$myArray = array(1, 2, null, 3, null, 4); 
foreach ($myArray as $key => $value) { 
  if (is_null($value)) { 
    unset($myArray[$key]); 
  } 
} 
print_r($myArray); 
?>

Hasil keluaran:

Array ( [0] => 1 [1] => 2 [3] => 3 [5] => 4 )

Dalam contoh ini, kita mula-mula mencipta tatasusunan yang mengandungi nilai nol. Kemudian kami menggunakan gelung foreach untuk melintasi tatasusunan dan menentukan sama ada elemen itu adalah nol melalui fungsi is_null(). Jika ia adalah batal, gunakan fungsi unset() untuk memadamkan elemen. Akhir sekali, kami menggunakan fungsi print_r() untuk mencetak keputusan dan mendapati bahawa nilai nol dalam tatasusunan telah dipadamkan.

Nota: Menggunakan fungsi unset() akan menukar tatasusunan asal dan menetapkan semula nama kunci tatasusunan.

  1. Gunakan fungsi array_filter()

Selain menggunakan fungsi unset(), kita juga boleh menggunakan fungsi array_filter() dalam PHP untuk memadam nilai null ​dalam tatasusunan. Fungsi array_filter() boleh menapis elemen dalam tatasusunan dengan menentukan fungsi panggil balik.

Kod sampel adalah seperti berikut:

<?php 
$myArray = array(1, 2, null, 3, null, 4); 
$newArray = array_filter($myArray, function($element) { 
  return !is_null($element); 
}); 
print_r($newArray); 
?>

Hasil keluaran:

Array ( [0] => 1 [1] => 2 [3] => 3 [5] => 4 )

Dalam contoh ini, kita mula-mula mencipta tatasusunan yang mengandungi nilai nol. Kemudian, kami menggunakan fungsi array_filter() untuk menapis elemen dalam tatasusunan. Dalam fungsi panggil balik, kami menggunakan fungsi !is_null() untuk menentukan sama ada elemen itu nol. Jika tidak batal, mengembalikan elemen. Akhir sekali, kami menggunakan fungsi print_r() untuk mencetak keputusan dan mendapati bahawa nilai nol dalam tatasusunan telah dipadamkan.

Nota: Menggunakan fungsi array_filter() akan mengembalikan tatasusunan baharu dan tatasusunan asal tidak akan berubah.

  1. Perbandingan prestasi

Apabila memadamkan nilai nol dalam tatasusunan, anda boleh menggunakan fungsi unset() atau fungsi array_filter() untuk menyelesaikan tugasan . Walau bagaimanapun, mereka sangat berbeza dalam prestasi.

Apabila kita menggunakan fungsi unset(), ia akan merentasi keseluruhan tatasusunan dan menukar tatasusunan asal. Ini bermakna apabila terdapat sejumlah besar elemen dalam tatasusunan, ia akan menjadi sangat perlahan.

Sebaliknya, apabila kita menggunakan fungsi array_filter(), ia mencipta tatasusunan baharu dan mengandungi hanya elemen yang bukan nol. Ini bermakna ia akan menjadi lebih pantas, terutamanya apabila tatasusunan adalah sangat besar.

Oleh itu, apabila anda memerlukan kaedah berprestasi tinggi untuk mengalih keluar nilai null ​​​​dalam tatasusunan, adalah disyorkan untuk menggunakan fungsi array_filter().

Ringkasan:

PHP ialah bahasa pengaturcaraan yang sangat berkuasa yang menyediakan pelbagai kaedah untuk menangani tatasusunan. Dalam artikel ini, kami memperkenalkan penggunaan fungsi unset() dan fungsi array_filter() untuk mengalih keluar nilai nol dalam tatasusunan. Pada masa yang sama, kami juga membandingkan perbezaan prestasi mereka. Harap artikel ini membantu anda lebih memahami cara mengalih keluar nilai nol daripada tatasusunan dalam PHP.

Atas ialah kandungan terperinci php padam tatasusunan null. 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