我有以下数组格式:
Array
(
[0] => stdClass Object
(
[tid] => 3
[children] => Array ()
)
[1] => stdClass Object
(
[tid] => 15
)
[2] => stdClass Object
(
[tid] => 12
[children] => Array ()
)
[3] => stdClass Object
(
[tid] => 9
[children] => Array ()
)
)
我想删除没有[儿童]的项目,并且遇到一些困难。
非常感谢帮助,谢谢。
答案 0 :(得分:3)
试试这个,其中$array
是您要处理的数组
foreach($array as $key => $value)
{
if(!isset($value['children'])
unset($array[$key]);
}
这将删除数组中未设置子项或null
的所有项目。由于在您的示例中您将子项设置为空数组,因此您需要使用isset()
而不是empty()
。
答案 1 :(得分:1)
你可以试一试,让我知道会发生什么吗?
$myArray = array_filter($myArray, "hasChildren");
function hasChildren($node) {
if (isset($node->children)) return true;
return false;
}