步驟:1、使用array_filter()函數(shù)過(guò)濾數(shù)組,語(yǔ)法“array_filter(原數(shù)組);”,會(huì)返回一個(gè)包含所有不為空元素的數(shù)組;2、使用count()函數(shù)獲取原數(shù)組和過(guò)濾數(shù)組的長(zhǎng)度,并比較兩數(shù)組長(zhǎng)度是否相等,語(yǔ)法“count(原數(shù)組)==count(過(guò)濾數(shù)組)”,如果相等則數(shù)組所有值都不為空,如果不相等則數(shù)組中有值為空。
前端(vue)入門到精通課程:進(jìn)入學(xué)習(xí)
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
在php中,可以使用array_filter()和count()函數(shù)來(lái)判斷數(shù)組所有值是否都不為空
判斷步驟:
步驟1:利用array_filter()函數(shù)過(guò)濾數(shù)組,獲取不為空的元素
-
array_filter()過(guò)濾數(shù)組,返回符號(hào)條件的元素
array_filter函數(shù)的功能是利用回調(diào)函數(shù)來(lái)對(duì)數(shù)組進(jìn)行過(guò)濾,一直都以為用回調(diào)函數(shù)才能處理,卻沒(méi)有發(fā)現(xiàn)手冊(cè)下面還有一句,如果沒(méi)有回調(diào)函數(shù),那么默認(rèn)就是刪除數(shù)組中值為false的項(xiàng)目。
$res=array_filter($arr);
會(huì)返回一個(gè)包含所有不為空元素的過(guò)濾數(shù)組
步驟2:使用count()函數(shù)獲取原數(shù)組和過(guò)濾數(shù)組的長(zhǎng)度,并比較兩數(shù)組的長(zhǎng)度是否相等
count(原數(shù)組)==count(過(guò)濾數(shù)組)
-
如果相等,則數(shù)組所有值都不為空(因?yàn)闆](méi)有過(guò)濾掉任何一個(gè)元素)
-
如果不相等,則數(shù)組中有值為空
完整實(shí)例代碼:
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,'h',TRUE,FALSE,null,99,100); var_dump($arr); echo "過(guò)濾后的數(shù)組:"; $res=array_filter($arr); var_dump($res); if(count($arr)==count($res)){ echo "數(shù)組所有值都不為空"; }else{ echo "數(shù)組中有值為空"; } ?>
說(shuō)明:
array_filter() 函數(shù)
array_filter() 函數(shù)用回調(diào)函數(shù)過(guò)濾數(shù)組中的元素,會(huì)返回一個(gè)過(guò)濾后的數(shù)組。
該函數(shù)把輸入數(shù)組中的每個(gè)鍵值傳給回調(diào)函數(shù)。如果回調(diào)函數(shù)返回 true,則把輸入數(shù)組中的當(dāng)前鍵值返回給結(jié)果數(shù)組。數(shù)組鍵名保持不變。
array array_filter ( $array , 回調(diào)函數(shù) )
推薦學(xué)習(xí):《PHP視頻教程》