【发布时间】:2018-07-09 14:54:44
【问题描述】:
我正在尝试在函数中执行递归数组以获取多维数组的所有级别编号和每个级别的总元素计数。
我需要帮助来实现这个目标我是堆栈,无法想出好的解决方案。
我的数据
$tree = array(
'room1' => array(
'room5',
'room6'
),
'room2' => array(
'room5',
'room6'
),
'room3' => array(
'room7' => array(
'room12' => array(
'room14',
'room15'
),
'room13'
),
),
'room4' => array(
'room8',
'room9',
'room10',
'room11'
)
);
想要的结果
Array(
'level1' => 4,
'level2' => 9,
'level3' => 2,
'level4' => 2
)
我的代码
function treeOut($tree)
{
$markup = '';
$count = 0;
foreach($tree as $branch => $twig)
{
$count++;
((is_array($twig)) ? treeOut($twig,$count) : $count++;
}
return $count
}
echo treeOut($tree);
【问题讨论】:
标签: php arrays recursion multidimensional-array