ThinkPHP无限分类的使用

本文实例展示了thinkphp自动填充实现无限级分类的方法,是thinkphp常用功能之一,非常具有实用价值。现将完整实例分享给大家,供大家参考。

ThinkPHP无限分类的使用

ThinkPHP无限分类的使用

具体实现步骤如下(本文采用TP框架的3.1.3版本):

(推荐教程:thinkphp教程)

第一步:表aoli_cate如下图所示

立即学习“PHP免费学习笔记(深入)”;

CREATE TABLE `fenlei` (  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',  `name` varchar(255) DEFAULT NULL COMMENT '父id',  `pid` int(255) NOT NULL COMMENT '名字',  `path` varchar(20) DEFAULT NULL,//path字段是给数据排序用  PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=utf8;insert into fenlei(id,name,pid,path) values(1,’新闻’,0,’0’),(2,’中国新闻’,1,’0-1’),//path 最后一个数据是排序用的(3,’美国新闻’,1,’0-1’),(4,’北京新闻’,2,’0-1-2’),(5,’华盛顿新闻’,3,’0-1-3’),(6,’日本新闻’,1,’0-1’);

20151211141515025.png

SpeakingPass-打造你的专属雅思口语语料 SpeakingPass-打造你的专属雅思口语语料

使用chatGPT帮你快速备考雅思口语,提升分数

SpeakingPass-打造你的专属雅思口语语料 25 查看详情 SpeakingPass-打造你的专属雅思口语语料

第二步:action部分

aoli/Home/Lib/Action/CataAction.class.php文件如下:

field("id,name,pid,path,concat(path,'-',id) as bpath")->order('bpath')->select();    foreach($list as $key=>$value){       //在查询获取的数组里面增加一个'count'数组;       //统计bpath字段的字符串个数,并赋值给'count'数组。       $list[$key]['count']=count(explode('-',$value['bpath']));    }    //展示数据    $this->assign('alist',$list);    $this->display();    }  //添加栏目  function add(){    //实例化CateModel类    $cate=new CateModel();    //如果从CateModel模型接受数据成功    if($vo=$cate->create()){      //执行添加      if($cate->add()){        $this->success('添加栏目成功');        }else{        $this->error('添加栏目失败');        }      //dump($vo);      }else{      //返回错误信息      $this->error($cate->getError());      }  }}?>

 第三步:模型部分

aoli/Home/Lib/Model/CataModel.class.php文件如下:

where("id=$pid")->find();      //把回调值$data赋值      $data=$list['path'].'-'.$list['id'];//子类的path为父类的path加上父类的id    }    //回调值    return $data;    }}?>

第四步:view视图部分

//size="20"可以将select 框变大 请选择父级栏目:         //value="0"表示为根目录         根栏目         //展示数据                                                           for($i=0;$i<$vo['count'];$i++){                //在值前面添加空格                echo  ';                }                        //输出值            {$vo['name']}                           
新的栏目名称:

以上就是ThinkPHP无限分类的使用的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/358355.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月6日 01:45:15
下一篇 2025年11月6日 01:50:21

相关推荐

发表回复

登录后才能评论
关注微信