$items1 = array(
array('id' => 1, 'pid' => 0, 'name' => '一级11','level'=>1 ),
array('id' => 11, 'pid' => 0, 'name' => '一级12','level'=>1 ),
array('id' => 2, 'pid' => 1, 'name' => '二级21','level'=>2 ),
array('id' => 10, 'pid' => 11, 'name' => '二级22','level'=>2 ),
array('id' => 3, 'pid' => 1, 'name' => '二级23','level'=>2 ),
array('id' => 12, 'pid' => 11, 'name' => '二级24','level'=>2 ),
array('id' => 9, 'pid' => 1, 'name' => '二级25','level'=>2 ),
array('id' => 14, 'pid' => 1, 'name' => '二级26','level'=>2 ),
array('id' => 4, 'pid' => 9, 'name' => '三级31','level'=>3 ),
array('id' => 6, 'pid' => 9, 'name' => '三级32','level'=>3 ),
array('id' => 7, 'pid' => 4, 'name' => '四级41','level'=>4 ),
array('id' => 8, 'pid' => 4, 'name' => '四级42','level'=>4 ),
array('id' => 5, 'pid' => 4, 'name' => '四级43','level'=>4 ),
array('id' => 13, 'pid' => 4, 'name' => '四级44','level'=>4 ),
array('id' => 15, 'pid' => 8, 'name' => '五级51','level'=>5 ),
array('id' => 16, 'pid' => 8, 'name' => '五级52','level'=>5 ),
array('id' => 17, 'pid' => 8, 'name' => '五级53','level'=>5 ),
array('id' => 18, 'pid' => 16, 'name' => '六级64','level'=>6 ),
);
foreach ($items1 as $item) {
$temp[$item['id']]=$item;
}
foreach($items1 as $item)
{
if(isset($temp[$item['pid']]))
{
$temp[$item['pid']]['son'][]=&$temp[$item['id']];
}else
{
$tree[]=&$temp[$item['id']];
}
}
function echotree($tree){
foreach($tree as $data)
{
for($i=1;$i<$data['level'];$i++)
{
echo "-";
}
echo $data['name'];
echo "<br/>";
if($data['son'])
{
$level+=1;
echotree($data['son']);
}
}
}
echotree($tree);