PHP/MySQL의 범주 계층 구조
이 시나리오에서는 MySQL에서 범주 및 하위 범주의 계층적 표현을 검색하는 것을 목표로 합니다. 데이터 베이스. 우리의 목표는 데이터베이스 내의 실제 계층 구조를 반영하는 중첩 형식으로 데이터를 구조화하는 것입니다.
이를 달성하기 위해 우리는 단일 패스에서 계층 구조를 생성할 수 있는 인접 목록 모델을 활용합니다. 우리는 PHP 스크립트를 활용하여 데이터를 처리하고 계층적 표현을 구성합니다.
첫 번째 단계에서는 데이터베이스를 쿼리하여 카테고리 및 하위 카테고리와 해당 상위-하위 관계를 검색합니다. 데이터를 가져오면 빠른 액세스를 위해 참조 배열을 만듭니다.
다음으로 검색된 데이터를 반복하고 참조 배열을 채웁니다. 루트 카테고리(parent_id = 0)를 식별하고 이를 목록 배열에 추가합니다. 하위 카테고리의 경우 참조 배열의 해당 상위 카테고리에 하위 카테고리로 추가합니다.
계층적 출력을 생성하기 위해 참조 배열을 순회하고 다음을 생성하는 재귀 함수 toUL()을 정의합니다. 중첩된 HTML UL(순서 없는 목록). 이 함수는 배열을 입력으로 사용하고 UL 요소를 생성합니다.
함수 내에서 배열을 반복하고 각 범주에 대한 LI(목록 항목) 요소를 생성합니다. 카테고리에 하위 항목이 있으면 toUL() 함수를 재귀적으로 호출하여 하위 트리를 구성합니다. 이 함수는 계층 구조의 구성된 HTML 표현을 반환합니다.
이 방법을 사용하면 HTML 문서로 쉽게 렌더링하거나 추가 처리에 사용할 수 있는 중첩 형식으로 범주 계층 구조를 효율적이고 정확하게 표현할 수 있습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3