获取指定分类的所有子分类ID号

//获取指定分类的所有子分类ID号
function getAllChildcateIds($categoryID){
//初始化ID数组
$array[] = $categoryID;
do {
$ids = '';
$where['pid'] = array('in',$categoryID);
$cate = M('cate')->where($where)->select();
foreach ($cate as $k=>$v){
$array[] = $v['id'];
$ids .= ',' . $v['id'];
}
$ids = substr($ids, 1, strlen($ids));
$categoryID = $ids;
}
while (!empty($cate));
$ids = implode(',', $array);
return $ids; // 返回字符串
//return $array //返回数组
}

获取指定分类所有父ID号

//获取指定分类所有父ID号
function getAllFcateIds($categoryID){
//初始化ID数组
$array[] = $categoryID;
do{
$ids = '';
$where['id'] = array('in',$categoryID);
$cate = M('cate')->where($where)->select();
echo M('cate')->_sql();
foreach ($cate as $v){
$array[] = $v['pid'];
$ids .= ',' . $v['pid'];
}
$ids = substr($ids, 1, strlen($ids));
$categoryID = $ids;
}
while (!empty($cate));
$ids = implode(',', $array);
return $ids; // 返回字符串
//return $array //返回数组
}

获取指定分类的所有子分类 键为ID,值为分类名

//获取指定分类的所有子分类 键为ID,值为分类名
function getCateKv($categoryID){
//初始化ID数组,赋值当前分类
$array[] = M('cate')->where("id={$categoryID}")->getField("cateName");
do {
$ids = '';
$where['pid'] = array('in',$categoryID);
$cate = M('cate')->where($where)->select();
echo M('cate')->_sql();
foreach ($cate as $k=>$v) {
$array[$v['id']] = $v['cateName'];
$ids .= ',' . $v['id'];
}
$ids = substr($ids, 1, strlen($ids));
$categoryID = $ids;
}
while (!empty($cate));
$ids = implode(',', $array);
//return $ids; // 返回字符串
return $array //返回数组
}

ThinkPHP分类查询(获取当前分类的子分类,获取父分类,下一级分类)的更多相关文章

  1. 获取元素节点的子节点 & 获取文本节点

    1. 获取元素节点的子节点(**只有元素节点才有子节点):              ①. childNodes 属性获取全部的子节点, 但该方法不实用. 因为如果要获取指定的节点          ...

  2. thinkphp 组合查询

    组合查询的主体还是采用数组方式查询,只是加入了一些特殊的查询支持,包括字符串模式查询(_string).复合查询(_complex).请求字符串查询(_query),混合查询中的特殊查询每次查询只能定 ...

  3. 夺命雷公狗ThinkPHP项目之----企业网站10之栏目的编辑完善(无限极分类的完成)

    我们编辑首先就要考虑将下拉框效果实现出来,然后再进行下一步操作: 我们用到了Model层的操作,在第8讲里面其实已经写好了catTree方法,控制器如下所示: 然后在列表页然他变量进行输出 然后开始通 ...

  4. SQL-三级分类查询

    /*SQLyog 企业版 - MySQL GUI v8.14 MySQL - 5.5.40 : Database - appinfodb******************************** ...

  5. php实现无限级分类查询(递归、非递归)

    递归函数实现方式 上面提到,递归函数的也是借助于栈的机制实现的,但是底层对于栈的处理对于程序员来说都是透明的,程序员只需要关心应用的实现逻辑.所以说使用递归处理上述问题理解起来比较容易,代码也比较简洁 ...

  6. SQL 语句与性能之联合查询和联合分类查询

    select * from t1 left join t2 on t2.sysno =t1.ASysNo left join t3 on t3.sysno =t2.ASysNo left join t ...

  7. 最基础的PHP分类查询程序

    最初级的PHP分类查询程序 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...

  8. 阶段5 3.微服务项目【学成在线】_day07 课程管理实战_03-新增课程-课程分类查询

    2 新增课程 2.1 需求分析 用户操作流程如下: 1.用户进入“我的课程”页面,点击“新增课程”,进入新增课程页面 2.填写课程信息,选择课程分类.课程等级.学习模式等. 3.信息填写完毕,点击“提 ...

  9. ThinkPHP视图查询详解

    ThinkPHP视图查询详解 参考http://www.jb51.net/article/51674.htm   这篇文章主要介绍了ThinkPHP视图查询,需要的朋友可以参考下     ThinkP ...

随机推荐

  1. C++隐式转换与显式转换

    普通类型的转换顺序:隐式把char——>int和从short——>double.转换可能会导致数据的丢失. 自定义类型:有两种函数可以进行隐式转换,单参数构造函数 和 隐式类型转换符.   ...

  2. C++ 判断目录是否存在并新建目录

    http://blog.csdn.net/u012005313/article/details/50688257 #include <io.h> #include <string&g ...

  3. spring 优点

    spring 的优点?1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 2.可以使用容易提供的众多服务,如事务管理,消息服务等 3.容器提供单例模式支持 4.容器提供了AOP技术,利用它很容易实 ...

  4. Struts2中带参数的结果集

    2.首先,新建一个struts2项目,项目名为ResultParam,打开index.jsp页面,修改编码格式为utf-8,添加一个超链接,用于向结果集传参数,完整代码如下: 相应的struts.xm ...

  5. 第三百一十二节,Django框架,Cookie

    第三百一十二节,Django框架,Cookie 注意:获取Cookie是在请求对象里处理,设置Cookie是在响应对象里处理 普通Cookieset_cookie()设置普通cookie 参数: ke ...

  6. PyQT中多重继承,其中继承的父类有QObject或QObject的子孙类

    如果Child多重继承(Parent_1,Parent_2,Parent_3),其super函数 super(Child, self).__init__() 则会执行继承的最左侧的父类:Parent_ ...

  7. R语言绘图边框

    在R语言中, 绘图边框一共有3个区域: device region : figure region : plot region   : 在描述不同区域大小的时候,有对应的不同参数: din : 返回d ...

  8. JavaSE(十)之反射

    开始接触的时候可能大家都会很模糊到底什么是反射,大家都以为这个东西不重要,其实很重要的,几乎所有的框架都要用到反射,增加灵活度.到了后面几乎动不动就要用到反射. 首先我们先来认识一下对象 学生---- ...

  9. _variant_t和_bstr_t

    _variant_t和_bstr_t这两个类分别封装并管理VARIANT和BSTR这两种数据类型, VARIANT和BSTR这两种类型是COM中使用的数据类型. 实现_variant_t向int,St ...

  10. WinSock1.1和WinSock2.0

    网络编程很重要,说到网络编程就不得不提Socket编程. Windows提供了Windows Socket API(简称WSA),WinSock,目前有两个版本:WinSock1.1 and WinS ...