php无限极分类 在tp框架中的改良问题
由于经常使用在项目中使用无限极分类,所以封装成了一个类tree
其中查找id下所有子分类的函数如下: $arr为无限极整体的数组,$pid_name为父id数据库的字段名,$id为要查找的id值.
调用方法:
//获取无限极分类的数据
$cateM=M('category');
$cateAll=$cateM->select();
//获得某个id下面的子分类,
$cid=Tree2::unlimited_child('$cateAll','parent_id',$id);
我用的是tp3.2的框架,每次都需要先调用红色的取一下数据,为了简化代码适应tp3.2,我改良后的类Tree2: $tablename为无限极栏目存放的表名,其他参数不变
调用方法:
$cid=Tree2::unlimited_child('category','parent_id',$id);
但是取回来的是空,函数里// dump($arr);这块能取到数据,哪块出问题了,应该怎么写,谢谢
其中查找id下所有子分类的函数如下: $arr为无限极整体的数组,$pid_name为父id数据库的字段名,$id为要查找的id值.
static public function unlimited_child($arr,$pid_name,$id=0){
$tmp=array();
foreach ($arr as $v) {
if($v["$pid_name"]==$id){
$tmp[]=$v['id'];
// $tmp[]=$v;
$tmp=array_merge($tmp,self::unlimited_child($arr,$pid_name,$v['id']));
}
}
return $tmp;
}
调用方法:
//获取无限极分类的数据
$cateM=M('category');
$cateAll=$cateM->select();
//获得某个id下面的子分类,
$cid=Tree2::unlimited_child('$cateAll','parent_id',$id);
我用的是tp3.2的框架,每次都需要先调用红色的取一下数据,为了简化代码适应tp3.2,我改良后的类Tree2: $tablename为无限极栏目存放的表名,其他参数不变
static public function unlimited_child($tablename,$pid_name,$id=0){
$arr=M($tablename)->select();
// dump($arr);
$tmp=array();
foreach ($arr as $v) {
if($v["$pid_name"]==$id){
$tmp[]=$v['id'];
// $tmp[]=$v;
$tmp=array_merge($tmp,self::unlimited_child($tablename,$pid_name,$v['id']));
}
}
return $tmp;
}
调用方法:
$cid=Tree2::unlimited_child('category','parent_id',$id);
但是取回来的是空,函数里// dump($arr);这块能取到数据,哪块出问题了,应该怎么写,谢谢
...全文
相关推荐
tp树形无限极分类
无限极分类技术,结合thinkphp3.2.3,有数据库表,下载解压即可,适合新手学习的好源码
tp5框架前台无限极导航菜单类实现方法分析
主要介绍了tp5框架前台无限极导航菜单类实现方法,结合实例形式分析了tp5框架前台无限极导航菜单类实现原理、步骤与操作注意事项,需要的朋友可以参考下
TP框架无限极分类封装[项目代码]
本文介绍了在ThinkPHP框架中封装无限极分类的方法。通过CatModel类实现,首先在构造函数中获取所有分类数据,然后通过递归函数getTree处理分类层级关系。该函数根据parent_id筛选子分类,并利用array_merge合并数组,确保分类数据层级结构正确。这种方法适用于需要动态生成多级分类菜单的场景,代码简洁高效,便于维护和扩展。
TP5.0框架实现无限极回复功能的方法分析
主要介绍了TP5.0框架实现无限极回复功能的方法,结合实例形式分析了thinkPHP5.0框架下无限极回复功能相关的数据库、评论功能及界面布局实现方法,需要的朋友可以参考下
tp5框架完整版
tp5框架的完整版!解压即可使用,简便,快捷,实用。包涵基层


Framework
