重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
递归,就是根据现有的id,重复取。上面get_parent_id只是获取父id,当然,你可以写一个直接获取祖父id的函数。不过,现在大部分php网站,都只会有获取父类的函数,想discuz,ecshop等。
祁县网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
查一个会员名下所有的会员,只需要读取该会员的son字段即可 查一个会员的上级 怎在数据库中所搜son字段,含有此会员id的都是他的上级会员。
无限级别的,使用递归编程比较容易,基本方法是定义一个显示子菜单的函数:function ShowMenu($pid){ ...显示数据库里面PID为$pid的所有菜单项目以及子项目(通过调用自身实现)...} 主程序调用ShowMenu(0)实现输出整个菜单。
递归很好理解啊,一般情况下都是用阶乘来入门的。无级分类算法是典型的递归操作。但在实际开发一般用伪无级分类,无级分类当分类级次多,每个分类节点多的情况下效率不高。
在我的Simpla中,用到了无限分类,使用了PHP的传引用思想实现无限分类的方法,可以完美展示类似这样的分类模式。
1、一般这种问题需要使用嵌套函数,PHP也是支持嵌套函数的,就是不停的调用自身,直到符合条件后退出函数循环,这样就能找出它所有的父级了,在c语言的时候也学过,理解起来还是比较容易的。
2、pid:上级菜单 生成数组:如果只是用于菜单显示的话,数组可以根据上级分类来取:写一个getArray(pid)的函数,根据上级菜单是什么,来取得同级菜单。顶级菜单的pid是0,如果取得的数据为空,那么就是没有子菜单。
3、arr = array(); 只是 定义 数组 而且是在 循环外边定义的 当然不会清空数组,就是在循环外边定义一个数组 然后在 循环里边 给它赋值。
4、数组实例化的时候都会附上对应类型的初始值的。