/** * 无限极分类处理(通过递归方式实现) * @param $section 原始数据Array * @param $html 界面显示前缀,比如 |- * @param $spear 分级中所需要使用的分隔符,支持html转义 * @param $fid 父级id,顶级为0 * @param $level 层级关系 * str_repeat(string,num) :字符串string重复num次 * array_merge() 函数把一个或多个数组合并为一个数组 */ function tree($section,$html='|-',$spear=' ',$fid=0,$level=0){ $arr = array(); foreach($section as $v){ if($v['fid'] == $fid){ $v['html'] = $html; $v['spear'] = str_repeat($spear, $level); $arr[] = $v; $arr = array_merge($arr,tree($section,$html,$spear,$v['id'],$level+1)); } } return $arr; }