오래전부터 사용되던 PHP 무선 분류 방법을 재귀적 발상을 이용하여 이곳에서 여러분과 공유합니다.
//$data는 데이터베이스에서 꺼낸 분류 데이터이고, $pid는 상위 분류 id ,$level은 분류 수준으로 여기서는 10단계로 제한되며, $keyword는 분류 이름
function genCate($data, $pid =0, $level = 0,$keyword) { if($level ==10)break; $l = str_repeat(" ", $level); $l = $l.'└'; static $arrcat = array(); $arrcat =empty($level) ? array() :$arrcat; foreach($data as $k => $row) { if($row['pid']==$pid) { $row[$keyword] = $l.$row[$keyword]; $row['level'] =$level; $arrcat[] = $row; genCate($data,$row['id'], $level+1,$keyword); } } return $arrcat; }
위의 내용은 PHP 무선 분류에 대한 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.