首頁 > 後端開發 > PHP問題 > php關聯數組中怎麼去掉空值

php關聯數組中怎麼去掉空值

青灯夜游
發布: 2023-03-16 13:30:01
原創
1952 人瀏覽過

兩種去除方法:1、利用foreach語句循環遍歷關聯數組,在循環體中利用unset()函數根據鍵名刪除空值元素即可,語法「foreach($arr as $k= >$v){if(!$v){unset($arr[$k]);}}」。 2.使用array_filter()函數過濾關聯數組,刪除空值元素(數組中值等於FALSE的所有元素),語法「array_filter($arr)」。

php關聯數組中怎麼去掉空值

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

php關聯數組中去掉空值的兩種方法

#方法1:foreach語句unset()函數

1、利用foreach語句循環遍歷關聯數組

foreach ($array as $key => $value){
    循环语句块;
}
登入後複製

遍歷給定的 $array 數組,每次循環中都會將目前數組的值賦給 $value,而鍵名賦給 $key。

2、在循環體中,一個個判斷數組元素是否為空值,利用unset()函數根據鍵名刪除空值

if( !$value ){
unset( $arr[$key] );  
}
登入後複製

完整程式碼:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr=array(1=>"1","a"=>"",2=>"2","b"=>0,"c"=>"blue");
var_dump($arr);
foreach ($arr as $k=>$v){
    if( !$v ){
		unset($arr[$k]);  
	}
}
var_dump($arr);
?>
登入後複製

php關聯數組中怎麼去掉空值

方法2:使用array_filter()函數過濾關聯數組,刪除空值元素

array_filter()函數,也稱為回調函數,是用於使用使用者定義的函數來過濾數組的元素。它迭代數組中的每個值,將它們傳遞給使用者定義的函數或回調函數。

當使用array_filter()函數來宣告回呼函數時,它會刪除false值(空值),但是,如果未指定回呼函數,則將刪除數組中值等於FALSE的所有元素,例如空字串或NULL值。

<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(11,&#39;&#39;,null,12,false,0); 
var_dump($arr);
$newarr = array_filter($arr); 
echo "过滤后的数组:";
var_dump($newarr);
?>
登入後複製

php關聯數組中怎麼去掉空值

推薦學習:《PHP影片教學

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

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板