首頁 > php教程 > php手册 > php+mysql非递归方法实现无限级分类

php+mysql非递归方法实现无限级分类

WBOY
發布: 2016-06-06 19:52:02
原創
1093 人瀏覽過

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 用php实现无限级的分类,用递归方法是最容易想到的,但递归很占用系统资源,所以一般情况不考虑使用递归, 本文通过非递归数据库的设计的来实现无限级分类 数据库结构如下: id 编号 fid 父分类编号 class

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

    用php实现无限级的分类,用递归方法是最容易想到的,但递归很占用系统资源,所以一般情况不考虑使用递归,

    本文通过非递归数据库的设计的来实现无限级分类

    数据库结构如下:

    id 编号

    fid 父分类编号

    class_name 分类名

    path 分类路径,以 id 为节点,组成类似 ,1,2,3,4, 这样的字符串

    可以假设有如下的数据

    id fid class_name path

    ----------------------------------------------------

    1 0 分类1 ,1,

    2 0 分类2 ,2,

    3 1 分类1-1 ,1,3,

    4 1 分类1-2 ,1,4,

    5 2 分类2-1 ,2,5,

    6 4 分类1-2-1 ,1,4,6,

    ----------------------------------------------------

    PHP代码:

   

    $sql=“SELECT * FROM tree order by path”;

    $result=$nbs->Query($sql);

    while($rows=$nbs->fetch_array($result)){

    if(substr_count($rows['path'],',')>2){

    for($i=0;$i

    echo ' ';

    }

    echo $rows['class_name'].'
';

    }

    ?>

    其中$nbs是数据库操作类.

php+mysql非递归方法实现无限级分类

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板