首頁  >  文章  >  後端開發  >  php怎麼去除數組中的空對象

php怎麼去除數組中的空對象

青灯夜游
青灯夜游原創
2022-05-31 19:02:541900瀏覽

移除方法:1、迴圈遍歷數組,語法「foreach($arr as $k=>$v){}」;2、在循環體中,判斷數組元素是否為空對象,如果是則用unset()刪除,語法「if((array)$v==[]){unset($arr[$k]);}」。

php怎麼去除數組中的空對象

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

陣列是可以儲存物件的,那麼如果陣列中的物件為空:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$bar = new stdClass();  //创建“空”对象
$arr=array(1,$bar,3,4,6,8);//这里将实例化的对象存入数组
var_dump($arr);//这里打印数组结构 你会发现下标1的位置存储了一个object对象
?>

php怎麼去除數組中的空對象

stdClass是預設的PHP物件。 stdClass沒有屬性,方法或父級。它不支援魔術方法,並且不實作任何介面。

要怎麼該空物件刪除?以下介紹一下php去除數組中空物件的方法

步驟1:使用foreach語句循環遍歷數組

foreach ($arr as $key => $value){
    //循环体语句块;
}

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

步驟2:在循環體中,判斷數組元素是否為空對象,如果是,則用unset()刪除

if((array)$value==[]){
		unset($arr[$key]);
}

說明:要想判斷沒有任何屬性的物件是否為空,最方便的方式是把物件轉成陣列;接著判斷陣列是否為空即可。

完整程式碼:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$bar = new stdClass();
$arr=array(1,$bar,3,4,6,8);//这里将实例化的对象存入数组
var_dump($arr);//这里打印数组结构 你会发现下标1的位置存储了一个object对象
foreach($arr as $k=>$v){
	if((array)$v==[]){
		unset($arr[$k]);
	}
}
var_dump($arr);
?>

php怎麼去除數組中的空對象

推薦學習:《PHP影片教學

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

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