当前位置 : 主页 > 网络编程 > PHP >

无限级分类

来源:互联网 收集:自由互联 发布时间:2021-06-28
gistfile1.txt /** * 把返回的数据集转换成Tree * access public * @param array $list 要转换的数据集 * @param string $pid parent标记字段 * @param string $level level标记字段 * return array */ function list_to_tree($list
gistfile1.txt
/**
     * 把返回的数据集转换成Tree
     * access public
     * @param array $list 要转换的数据集
     * @param string $pid parent标记字段
     * @param string $level level标记字段
     * return array
     */
    function list_to_tree($list, $pk='id',$pid = 'pid',$child = '_child',$root=0) {
        // 创建Tree
        $tree = array();
        if(is_array($list)) {
            // 创建基于主键的数组引用
            $refer = array();
            foreach ($list as $key => $data) {
                $refer[$data[$pk]] =& $list[$key];
            }
            foreach ($list as $key => $data) {
                // 判断是否存在parent
                $parentId = $data[$pid];
                if ($root == $parentId) {
                    $tree[] =& $list[$key];
                }else{
                    if (isset($refer[$parentId])) {
                        $parent =& $refer[$parentId];
                        $parent[$child][] =& $list[$key];
                    }
                }
            }
        }
        return $tree;
    }
上一篇:JS弹窗
下一篇:获取客户端ip
网友评论