>  기사  >  백엔드 개발  >  PHP에서 Infinitus 분류를 구현하는 방법은 무엇입니까? (코드 포함)

PHP에서 Infinitus 분류를 구현하는 방법은 무엇입니까? (코드 포함)

不言
不言원래의
2018-08-13 15:09:142217검색

이 글의 내용은 PHP에서 Infinitus 분류를 구현하는 방법에 관한 것입니다. (코드 첨부) 특정 참고 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

프로젝트 작성 시 Infinitus Classification을 사용했습니다. 프로젝트의 특수한 이유로 메뉴바에서 배열을 저장하기 위해 정적 변수를 사용할 때 문제가 발생하므로 인용된 메서드를 선택했습니다

public function getTree($array, $pid = 0, $level = 0, &$list)
    {
        foreach ($array as $key => $value) {            
        //第一次遍历,找到父节点为根节点的节点 也就是pid=0的节点
            if ($value['parentid'] == $pid) {                
            //父节点为根节点的节点,级别为0,也就是第一级
                $value['level'] = $level;                
                //把数组放到list中
                $list[] = $value;                
                //把这个节点从数组中移除,减少后续递归消耗
                unset($array[$key]);                
                //开始递归,查找父ID为该节点ID的节点,级别则为原级别+1
                $this->getTree($array, $value['id'], $level + 1, $list);

            }
        }        
        return $list;
    }

관련 추천:

PHP에서 분류 트리 효과를 얻는 방법은 무엇입니까? (코드 첨부)

PHP를 사용하여 파일 크기를 판단하는 방법은 무엇입니까? (코드 예)

위 내용은 PHP에서 Infinitus 분류를 구현하는 방법은 무엇입니까? (코드 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.