부모-자식 관계에서 계층적 트리 구조 생성
부모-자식 관계에서 계층적 트리 구조를 구성하는 것은 프로그래밍에서 일반적인 작업입니다. 이를 달성하려면 재귀적 접근 방식을 사용하여 데이터를 중첩된 단위로 효과적으로 구성할 수 있습니다.
PHP에서 일련의 상위-하위 쌍을 계층적 트리로 변환하려면 구문 분석과 인쇄라는 두 가지 핵심 기능이 필요합니다. 구문 분석 기능은 하위-상위 쌍을 체계적으로 탐색하여 계층적 데이터 구조를 구축합니다. 그 후 인쇄 기능은 이 구조를 일련의 중첩된 HTML 비순차 목록으로 변환하며 각 목록 항목은 하위 항목을 나타냅니다.
예를 들어 다음 상위-하위 쌍을 고려하세요.
Child : Parent H : G F : G G : D E : D A : E B : C C : E D : NULL
이 데이터를 구문 분석하기 위해 parsTree 함수를 정의합니다.
function parseTree($tree, $root = null) { $return = array(); foreach($tree as $child => $parent) { if($parent == $root) { unset($tree[$child]); $return[] = array( 'name' => $child, 'children' => parseTree($tree, $child) ); } } return empty($return) ? null : $return; }
다음으로 printTree 함수를 정의하여 구문 분석된 데이터를 변환합니다. 계층 구조를 HTML 비순차 목록으로 변환:
function printTree($tree) { if(!is_null($tree) && count($tree) > 0) { echo '<ul>'; foreach($tree as $node) { echo '<li>'.$node['name']; printTree($node['children']); echo '</li>'; } echo '</ul>'; } }
이 두 기능을 결합하면 하위-상위 쌍을 계층적 트리 구조로 성공적으로 변환할 수 있습니다.
위 내용은 부모-자식 관계에서 PHP의 계층적 트리 구조를 어떻게 구축할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!