php无限极分类处理

/**
 * 无限极分类处理(通过递归方式实现)
 * @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;
}

猜你喜欢

转载自www.cnblogs.com/yanyiyaner/p/9366464.html