PHP数组递归 [英] php array recursion
本文介绍了PHP数组递归的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个这样的数组:
Array (
[0] => Array ( [id] => 1000 [enroller_id] => 1005)
[1] => Array ( [id] => 1005 [enroller_id] =>)
[2] => Array ( [id] => 1101 [enroller_id] => 1000 )
[3] => Array ( [id] => 1111 [enroller_id] => 1000 )
)
我要创建层次数组是这样的:
I want to create hierarchy array like this:
Array(
[1005] => Array(
[1000] => Array(
[1101] => ...
[1111] => ...
)
)
)
你能帮助我吗?我觉得这是一个递归。
Can you help me? I think that it is a recursion.
推荐答案
这将做你想做的,只是它不把第一个元素(1005)数组中的:
This will do what you want, except it does not put the first element (1005) in the array:
function create_array($number, $data)
{
$result = array();
foreach ($data as $row)
{
if ($row['enroller_id'] == $number)
{
$result[$row['id']] = create_array($row['id'], $data);
}
}
return $result;
}
print_r(create_array(1005, $data));
输出:
Array
(
[1000] => Array
(
[1101] => Array ()
[1111] => Array ()
)
)
这篇关于PHP数组递归的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文