步驟:1、使用array_filter()函數過濾數組,語法“array_filter(原始數組);”,會傳回一個包含所有不為空元素的數組;2、使用count()函數取得原始數組和過濾數組的長度,並比較兩數組長度是否相等,語法“count(原始數組)==count(過濾數組)”,如果相等則數組所有值都不為空,如果不相等則數組中有值為空。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
在php中,可以使用array_filter()和count()函數來判斷陣列所有值是否都不為空
判斷步驟:
步驟1:利用array_filter( )函數過濾數組,取得不為空的元素
array_filter()過濾數組,傳回符號條件的元素
array_filter函數的功能是利用回呼函數來對數組進行過濾,一直以為用回調函數才能處理,卻沒有發現手冊下面還有一句,如果沒有回調函數,那麼預設就是刪除數組中值為false的項目。
$res=array_filter($arr);
會傳回一個包含所有不為空元素的過濾數組
#步驟2:使用count()函數取得原始數組和過濾數組的長度,並比較兩個數組的長度是否相等
count(原数组)==count(过滤数组)
如果相等,則數組所有值都不為空(因為沒有過濾掉任何一個元素)
如果不相等,則陣列中有值為空
完整實例程式碼:
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,'h',TRUE,FALSE,null,99,100); var_dump($arr); echo "过滤后的数组:"; $res=array_filter($arr); var_dump($res); if(count($arr)==count($res)){ echo "数组所有值都不为空"; }else{ echo "数组中有值为空"; } ?>
說明:
array_filter() 函數
array_filter() 函式用回呼函數過濾陣列中的元素,會傳回一個過濾後的陣列。
此函數將輸入陣列中的每個鍵值傳給回呼函數。如果回呼函數傳回 true,則把輸入數組中的目前鍵值傳回給結果陣列。數組鍵名保持不變。
array array_filter ( $array , 回调函数 )
推薦學習:《PHP影片教學》
以上是php怎麼判斷數組所有值是否都不為空的詳細內容。更多資訊請關注PHP中文網其他相關文章!