如何检查空对象数组?

3

我有以下一组空对象数组,当我使用php的empty函数时,以下对象数组会绕过empty函数。

stdClass Object
(
)

请给我提供建议,如何识别空对象数组。

4
可能是如何在PHP中检查对象是否为空?的重复问题。 - Narendrasingh Sisodia
3个回答

2

使用json_encodejson_decode将对象转换为关联数组。

$arr = json_decode(json_encode($obj), TRUE);
if (empty($arr)) {
  // Object is empty.
}

json_decode函数如果第二个参数设置为TRUE,则返回关联数组(即使传递了对象)。

工作示例:

<?php
$obj = new stdClass();
$arr = json_decode(json_encode($obj), TRUE);
if (empty($arr)) {
  echo 'empty';
}
?>

1
将其转换为数组并检查:
$array = (array) $object;

if (empty($array))

or

count($array)

0

可以这样做

$array = array_filter($array);
if(!empty($array)) {
    echo "not empty";
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接