이전 섹션을 계속 사용하여 간단한 데이터베이스 테스트 및 테이블 클래스를 만듭니다
데이터베이스 테이블 연결:
<?php header("content-type:text/html;charset=utf8"); $link = mysqli_connect('localhost','yourname','password','test'); mysqli_set_charset($link, "utf8"); if (!$link) { die("连接失败:".mysqli_connect_error()); } ?>
사용자 정의 함수 get_array 정의, 아이디어는 기본적으로 이전 섹션과 동일합니다
상위 클래스 설정 pid = 0, SQL 문을 사용하여 하위 클래스를 쿼리하고 쿼리된 하위 클래스를 $result
에 배치합니다. while 루프를 사용하여 하위 클래스를 가져오고, 사용자 정의 함수 get_array를 호출하고, 하위 클래스의 ID를 사용자 정의 함수에 전달합니다.
그런 다음 계속해서 다음 레벨을 쿼리하고 마지막으로 배열을 출력합니다.
<?php header("content-type:text/html;charset=utf8"); $link = mysqli_connect('localhost','yourname','password','test'); mysqli_set_charset($link, "utf8"); if (!$link) { die("连接失败:".mysqli_connect_error()); } function get_array($id=0){ global $link; $sql = "select id,title from class where pid= $id"; $result = mysqli_query($link,$sql);;//查询子类 $arr = array(); if($result){//如果有子类 while($rows=mysqli_fetch_assoc($result)){ //循环记录集 $rows['list'] = get_array($rows['id']); //调用函数,传入参数,继续查询下级 $arr[] = $rows; //组合数组 } return $arr; } } $list = get_array(0); //调用函数 print_r($list); //输出数组 ?>