揭露php无限级分类的原理
程序员文章站
2022-03-06 14:17:27
...
概念
php无限级分类原理形象一点的比喻就像是一棵树,这棵树有自己的根部,然后主干,枝干在到叶子,越是向前越茂密,这就和分类一样,越是往下细分分类的栏目就越多,就像大家用到的pc电脑预装的WINDOWS操作系统,大家可以试一试在一个文件夹中新建一个文件夹然后在这个新的文件夹中,在新建一个,一直下去。你就能明白什么是无限级了。
原理
首先我们假设有这样的一个三级分类,新闻→PHP新闻→PHP6.0出来了。如果我们要查找“PHP6.0出来了”这条新闻,我们先点击新闻,然后再点击PHP新闻就可以查出来了,也就是我们可以通过祖父类一级一级地往下找,反过来我们只要知道一个子类的父类,就可以把它查找出来了。这样我们在设计数据库时就可以多设计一个父类id的字段就可以实现无限分类的功能了,数据库中的父类ID尤为重要,接下我我们使用递归方法和迭代方法就可以完成对无限级分类的制作。深入理解我们可以用家谱树和子孙树来比喻下。
家谱树是无限极分类的表现形式之一,另一个是子孙树。从汉语的意思也能够看出其中的区别。
家谱,现在很多地方都流行起修家谱,那怎么修家谱,就是给自己找一个祖宗,一代代找上去,形成了一个体系,这样编篡而成的叫家谱。家谱树就与之类似,从某个节点开始向上寻找其父节点,再找父节点的父节点,直到找不到为止。按照这种寻找,形成的一个类似树状的结构,就叫做家谱树。
而子孙树与其相反,子孙树类似于生物书中的遗传图,从某个节点开始寻找它的子节点,再找子节点的子节点,直到寻找完毕。这样形成的树状结构就叫做子孙树。
递归流程图
迭代流程图
相关文章:
上一篇: javascript有多少框架