$v){}"; 2. In the loop body, determine whether the array element is an empty object, and if so, delete it with unset() , the syntax "if((array)$v==[]){unset($arr[$k]);}"."/> $v){}"; 2. In the loop body, determine whether the array element is an empty object, and if so, delete it with unset() , the syntax "if((array)$v==[]){unset($arr[$k]);}".">

Home >Backend Development >PHP Problem >How to remove empty objects from array in php

How to remove empty objects from array in php

青灯夜游
青灯夜游Original
2022-05-31 19:02:541970browse

Removal method: 1. Loop through the array with the syntax "foreach($arr as $k=>$v){}"; 2. In the loop body, determine whether the array element is an empty object. If If so, use unset() to delete, the syntax is "if((array)$v==[]){unset($arr[$k]);}".

How to remove empty objects from array in php

The operating environment of this tutorial: windows7 system, PHP version 8.1, DELL G3 computer

Arrays can store objects, then if the array The object in is empty:

<?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对象
?>

How to remove empty objects from array in php

stdClass is the default PHP object. stdClass has no properties, methods or parents. It does not support magic methods and does not implement any interfaces.

How to delete empty objects? Here's how php removes hollow objects from an array

Step 1: Use the foreach statement to loop through the array

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

Traverse the given $arr Array, in each loop, the value of the current array will be assigned to $value, and the key name will be assigned to $key.

Step 2: In the loop body, determine whether the array element is an empty object. If so, use unset() to delete it

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

Instructions: To If you want to determine whether an object without any attributes is empty, the most convenient way is to convert the object into an array; then determine whether the array is empty.

Complete code:

<?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);
?>

How to remove empty objects from array in php

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to remove empty objects from array in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn