Dua kaedah pengalihan keluar: 1. Gunakan fungsi array_diff() untuk membandingkan tatasusunan yang mengandungi hanya "0" dengan tatasusunan asal Sintaksnya ialah "array_diff($arr, [0])"; fungsi array_filter() untuk memanggil fungsi panggil balik untuk menapis tatasusunan, sintaksnya ialah "function f($var){return($var!==0);}$arr=array_filter($arr,"f"); ".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Kaedah 1 : Gunakan Fungsi array_diff() mengalih keluar 0
array_diff() fungsi digunakan untuk membandingkan nilai dua (atau lebih) tatasusunan dan mengembalikan perbezaannya.
array_diff(array1,array2,array3...);
Hanya gunakan tatasusunan yang mengandungi hanya "0" untuk membandingkan dengan tatasusunan asal: array_diff($arr, [0])
Contoh:
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,2,3,0,1,"a","b","c",0,"d","a","c"); echo "原数组:"; var_dump($arr); $arr = array_diff($arr, [0]); echo "去除0后:"; var_dump($arr); ?>
.
Nota: Fungsi array_diff() membandingkan nilai dua (atau lebih) tatasusunan (nilai dalam kekunci=>nilai) dan mengembalikan tatasusunan perbezaan Termasuk semua nilai yang ada dalam tatasusunan yang dibandingkan (array1) tetapi tidak dalam mana-mana tatasusunan hujah lain (array2 atau array3, dsb.).
Kaedah 2: Gunakan fungsi array_filter() untuk mengalih keluar 0s dalam array
Fungsi array_filter() menggunakan fungsi panggil balik untuk menapis elemen dalam tatasusunan.
Fungsi ini menghantar setiap nilai kunci dalam tatasusunan input kepada fungsi panggil balik. Jika fungsi panggil balik kembali benar, nilai kunci semasa dalam tatasusunan input dikembalikan kepada tatasusunan hasil. Nama kunci tatasusunan kekal tidak berubah.
array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )
Parameter | Penerangan< /th> | ||||||||
---|---|---|---|---|---|---|---|---|---|
array | Diperlukan. Menentukan tatasusunan untuk ditapis. | ||||||||
panggilan balik | Pilihan. Menentukan fungsi panggil balik yang akan digunakan. | ||||||||
bendera |
|
<?php header('content-type:text/html;charset=utf-8'); function f($var) { return($var!==0); } $arr=array(1,2,3,0,1,"a","","c",0); echo "原数组:"; var_dump($arr); $arr = array_filter($arr,"f"); echo "去除0后:"; var_dump($arr); ?>
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,2,3,0,1,"0","","c",0,null,FALSE); echo "原数组:"; var_dump($arr); $arr = array_filter($arr); var_dump($arr); ?>
Pembelajaran yang disyorkan: "Tutorial Video PHP
"Atas ialah kandungan terperinci Bagaimana untuk mengeluarkan 0 nilai dari tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!