Home >php教程 >php手册 >简单无限级分类

简单无限级分类

WBOY
WBOYOriginal
2016-06-07 11:37:181424browse

数据层一个方法递归查询分类,返回多维数组。
控制器一个方法拼接html搞定
效果图:
简单无限级分类//没有排序哦~~<br> //数据库是wordpress的结构,如需了解数据结构,请自行百度wordpress数据库<br> <br> <br> /*-------------------------------------一下是model层文件-----------------------------------*/<br> //model层方法<br> public function getCateTree($parentId=0){<br>     $Model=new Model();<br>     $sql='select t1.*,t2.* from t_terms t1<br>               left join t_term_taxonomy t2 on t1.term_id=t2.term_id<br>               WHERE t2.taxonomy="category" AND t2.parent='.$parentId;<br>     $parentCates=$Model->query($sql);<br>     foreach($parentCates as $key=>$value){<br>         $parentCates[$key]['child']=$this->getCateTree($value['term_id']);<br>     }<br>     return $parentCates;<br> }<br> <br> /*---------------------------以下是控制器层文件------------------------------*/<br> <br> //拼接html方法<br> /**<br>  * $cates 分类多维数组<br>  * $index 多维数组层次,默认$index=1即最顶层,之后每次+1<br>  * return html<br>  * */<br> public function cateTreeHtml($cates,$index)<br> {<br>     if($index==1){<br>         $treeHtml='<ul>';//最外侧第一级<br>     }else{<br>         $treeHtml = '<ul>';<br>     }<br>     foreach ($cates as $value) {<br>         $child='';<br>         if (count($value['child']) != 0) {<br>             $child=$this->cateTreeHtml($value['child'],$index+1);//递归<br>         }<br>         $treeHtml .= '<li> <br>             <label><br>             <input><br>             '.$value['name'].'<br>             </label><br>             '.$child//子分类<br>             .'</li>';<br>     }<br>     $treeHtml .= '</ul>';<br>     return $treeHtml;<br> }<br> //////////////////////////////////////////////////////////通过model层获取多维分类多维数组调用cateTreeHtml()方法<br> //控制器层通过递归函数获取html<br> $catesHtml=$this->cateTreeHtml($cates,$index=1);<br> $postTags = $termModel->getPostTags($id);</ul>

AD:真正免费,域名+虚机+企业邮箱=0元

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn