《国产PHP框架之ThinkPHP模块开发系列十四,阶段性总结(二)详解无限级分类的显示和删除》要点:
本文介绍了国产PHP框架之ThinkPHP模块开发系列十四,阶段性总结(二)详解无限级分类的显示和删除,希望对您有用。如果有疑问,可以联系我们。
相关主题:thinkphp教程
无限级分类作为一个新手来说比拟难理解,所以为了让大家有一个更加系统的理解,本节全面一次性的详细讲解一下无限级分类.
PHP框架之ThinkPHP模块开发系列七,无限级分类2
1、在添加子栏目的时候要将父级栏目的id作为暗藏字段传递到数据库,并将该id保存到数据库的catepid中
2、在公共目录下构建function.php函数,用来接收从数据库中传递过来的catepid的值,断定catepid的值是否为0,如果为0,则返回“顶级栏目”,不为0的话,根据传过来的catepid的值,查找其父级栏目数据,并把查找出来的父级栏目的名称(catename)返回出去.这样在html页面显示的时候就可以根据catepid显示出父级(所属)栏目的名称.
在html中调用公共函数function的时候,我们直接在标签中用“|函数办法名”即可.
3、递归办法
递归办法是我们制作无限级分类的重要办法,无论是在栏目列表还是在面包屑导航上都用到此办法.
在制作栏目列表时候,我们先从catepid为0开始查找,并将符合条件的数据(我们暂且称其为a)存入到静态数组中,接着我们把数据a的id作为下一次查找的条件,如果存在数据b的catepid与a的id相等,则将b也存入静态数组中,然后继续以b的id作为条件查找下一组数据,如果不存在b则停止查找,并把静态数组返回出去供控制器办法调用.
PHP框架之ThinkPHP模块开发系列八,无限级分类的删除
1、递归办法
与无限级分类的显示相似,删除的时候,需要根据传入的id的值作为第一次查找的条件,如果数据a的catepid与传入的id值相等,则将a的id值存入静态数组中.然后以a的id作为下一次查找的条件,如果存在数据b的catepid与a的id相同,则将b的id值也存入静态数组中,然后继续以b的id作为条件查找下一组数据,如果不存在b则停止查找,并把静态数组中保留的id值返回出去.
2、model层删除相符条件的子分类
充足利用thinkphp中的钩子函数_before_delete.
我么利用数组分割办法implode,将递归办法中的静态数组中的id以“,”进行分割.要注意的是在model的删除办法,必须使用原生态的php语句.Execute(‘DELETE FROM ***’)
PHP框架——ThinkPHP各模块开发系列九,面包屑导航
此办法使用的仍然是递归思路.只不过使用的是while办法,从id开始查起或者说从子栏目开始往上查找父级栏目.首先是根据传入的id值查找本条数据a,存入到静态数组中.接着将数据a的catepid作为下一次查找的条件,如果a的catepid不为0,则进行查找符合条件的数据b,如果a的catepid为0,则说明查找到了顶级栏目,停止查找.
如果您仍有不明白,请留言.我们会第一光阴恢复!
喜欢的话,可以存眷我们.感谢!
本文由头条号“性命一路前行”原创,请勿转载.
《国产PHP框架之ThinkPHP模块开发系列十四,阶段性总结(二)详解无限级分类的显示和删除》是否对您有启发,欢迎查看更多与《国产PHP框架之ThinkPHP模块开发系列十四,阶段性总结(二)详解无限级分类的显示和删除》相关教程,学精学透。维易PHP学院为您提供精彩教程。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/9366.html