数组是这样的$arr[]=array('id'=>'1','name'=>'1','pid'=>'0');
$arr[]=array('id'=>'2','name'=>'2','pid'=>'1');
$arr[]=array('id'=>'3','name'=>'3','pid'=>'2');
$arr[]=array('id'=>'4','name'=>'4','pid'=>'2');
$arr[]=array('id'=>'5','name'=>'5','pid'=>'4');请问我如果要写出他的组织机构树状结构 怎么写这个递归呢,没搞明白
$arr[]=array('id'=>'2','name'=>'2','pid'=>'1');
$arr[]=array('id'=>'3','name'=>'3','pid'=>'2');
$arr[]=array('id'=>'4','name'=>'4','pid'=>'2');
$arr[]=array('id'=>'5','name'=>'5','pid'=>'4');请问我如果要写出他的组织机构树状结构 怎么写这个递归呢,没搞明白
1 => array ( 'catid' => '1', 'uid' => '0', 'num' => 1 ),
2 => array ( 'catid' => '2', 'uid' => '0', 'num' => 1 ),
3 => array ( 'catid' => '3', 'uid' => '0', 'num' => 1 ),
4 => array ( 'catid' => '4', 'uid' => '1', 'num' => 1 ),
5 => array ( 'catid' => '5', 'uid' => '1', 'num' => 1 ),
6 => array ( 'catid' => '6', 'uid' => '2', 'num' => 1 ),
7 => array ( 'catid' => '7', 'uid' => '4', 'num' => 1 ),
8 => array ( 'catid' => '8', 'uid' => '7', 'num' => 1 ),
9 => array ( 'catid' => '9', 'uid' => '5', 'num' => 1 ),
10 => array ( 'catid' => '10', 'uid' => '4', 'num' => 1 ),
11 => array ( 'catid' => '10', 'uid' => '4', 'num' => 1 ),
);
foreach( $ar as $k=>$v)
{
$o = $v['uid'];
while(isset($ar[$o]))
{
$ar[$o]['num'] += $v['num'];
$o = $ar[$o]['uid'];
}
}
print_r($ar);刚才看到的一个帖子,有可能帮到你