首頁 >後端開發 >PHP問題 >php刪除數組中的空值

php刪除數組中的空值

藏色散人
藏色散人原創
2021-06-18 09:50:423022瀏覽

php刪除數組中的空值的方法:1、透過foreach或while去除數組中的空值元素;2、透過array_filter函數去除數組中的空值元素。

php刪除數組中的空值

本文操作環境:Windows7系統、PHP7.1版,DELL G3電腦

php怎麼刪除陣列中的空值?

PHP移除數組中的空值元素(array_filter)

#說來慚愧,以前在去掉數組的空值是都是強寫foreach或while的,利用這兩個語法結構來刪除數組中的空元素,簡單程式碼如下:

<?php  
foreach($arr as $k=>$v){
    if(!$v) unset($arr[$k]);  
}

事實證明如果數組過大的情況下這樣處理的效率並不高。因為foreach是將目前操作的數組進行copy,每操作一下foreach,都是copy了一個變量,頁面裡面如果有太多的foreach,會是一個很大的消耗。

在網路上閒晃的時候,看到人有提示用array_filter,於是打開手冊看了一下,發現自己一直就守著個寶山卻不知道如何使用。

array_filter函數的功能是利用回呼函數來對陣列進行過濾,如果沒有回呼函數,那麼預設就是刪除數組中值為false的項目。如下範例:

<?php
$entry = array(   
	0 => &#39;foo&#39;,   
	1 => false,   
	2 => -1,   
	3 => NULL,   
	4 => &#39;&#39;
);
print_r(array_filter($entry));

輸出值為:

Array  
(  
    [0] => foo  
    [2] => -1  
)

建議:PHP裡面最重要的兩個章節應該是陣列運算和字串操作,這兩章裡面的函數都必須熟練,其他的就等用的時候再查吧。

推薦學習:《PHP影片教學

以上是php刪除數組中的空值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn