数组代码如下:
<?php $items = array( array( 'id' => 1, 'pid' => 0, 'name' => '一级11' ) , array( 'id' => 11, 'pid' => 0, 'name' => '一级12' ) , array( 'id' => 2, 'pid' => 1, 'name' => '二级21' ) , array( 'id' => 10, 'pid' => 11, 'name' => '二级22' ) , array( 'id' => 3, 'pid' => 1, 'name' => '二级23' ) , array( 'id' => 12, 'pid' => 11, 'name' => '二级24' ) , array( 'id' => 13, 'pid' => 12, 'name' => '三级31' ) , array( 'id' => 9, 'pid' => 1, 'name' => '二级25' ) , ); ?>
函数代码如下:
<?php function formatTree($array, $pid = 0) { $arr = array(); $tem = array(); foreach ($array as $v) { if ($v['pid'] == $pid) { $tem = formatTree($array, $v['id']); //判断是否存在子数组 $tem && $v['son'] = $tem; $arr[] = $v; } } return $arr; } ?>
其中,数组一定要包含id和pid用以指定数组值之间的层级关系.
文章链接:
随便收藏,请保留本文地址!