PHP(ThinkPHP)通过递归实现层级带children格式的树状形式来展示数据
这里通过一个自己做的权限表进行展示
表形式如下图
要实现的数组格式如下图:
程序代码如下:
通过递归实现,代码并未进行过多的优化。
//其中$data是查询到的所有的数据。
private function _reSort($data, $parent_id = 0) { $return = array();//不能用static foreach($data as $v) { if($v['parent_id'] == $parent_id) { foreach($data as $subv) { if($subv['parent_id'] == $v['id']) { $v['children'] = $this->_reSort($data, $v['id']); break; } } $return[] = $v; } } return $return; }