这篇文章给大家介绍php 中怎么实现树形数组,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
$items = array(
0 => array('id' => 1, 'pid' => 0, 'name' => '江西省'),
1 => array('id' => 2, 'pid' => 0, 'name' => '黑龙江省'),
2 => array('id' => 3, 'pid' => 1, 'name' => '南昌市'),
3 => array('id' => 4, 'pid' => 2, 'name' => '哈尔滨市'),
4 => array('id' => 5, 'pid' => 2, 'name' => '鸡西市'),
5 => array('id' => 6, 'pid' => 4, 'name' => '香坊区'),
6 => array('id' => 7, 'pid' => 4, 'name' => '南岗区'),
7 => array('id' => 8, 'pid' => 6, 'name' => '和兴路'),
8 => array('id' => 9, 'pid' => 7, 'name' => '西大直街'),
10 => array('id' => 10, 'pid' => 8, 'name' => '东北林业大学'),
11 => array('id' => 11, 'pid' => 9, 'name' => '哈尔滨工业大学'),
12 => array('id' => 12, 'pid' => 8, 'name' => '哈尔滨师范大学'),
13 => array('id' => 13, 'pid' => 1, 'name' => '赣州市'),
14 => array('id' => 14, 'pid' => 13, 'name' => '赣县'),
15 => array('id' => 15, 'pid' => 13, 'name' => '于都县'),
16 => array('id' => 16, 'pid' => 14, 'name' => '茅店镇'),
17 => array('id' => 17, 'pid' => 14, 'name' => '大田乡'),
18 => array('id' => 18, 'pid' => 16, 'name' => '义源村'),
19 => array('id' => 19, 'pid' => 16, 'name' => '上坝村'),
);
function getTree($items) {
$tree = [];
foreach ($items as $item) {
$tree[$item['id']] = $item;
}
foreach ($tree as $key => $val) {
$tree[$val['pid']]['child'][$key] = &$tree[$key];
}
return $tree['0']['child'];
}
print_r(getTree($items));
关于php 中怎么实现树形数组就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。