一个使用递归查询所有子分类的函数

来源:赵克立博客 分类: PHP 标签:PHP发布时间:2014-05-19 02:05:00最后更新:2014-05-19 02:40:16浏览:2716
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2014-05-19 02:40:16
温馨提示:
学无止境,技术类文章有它的时效性,请留意文章更新时间,如发现内容有误请留言指出,防止别人"踩坑",我会及时更新文章

在做项目的时候经常用过分类和子分类查询所有子分类的功能也经常用到

这时就用到递归啦,每次用的时候都把自己的大脑递归的那叫个痛苦哟。

下面把经常用到的查询所有子分类的递归方法整理成一个函数方便下次使用的时候

	//一个递归查询所有子分类的函数
	function getChildCatListId($pid){

		//定义一个初始化的空字符串
		$catidstr='';
		
		//查询当前分类的子分类数组列表
		$sql="select cat_id from cat where parent_id=$pid";
		$arr=$db->select($sql);
		
		
		if(count($arr)>0){
			//有子类就处理下返回一个组合的分类字符串
			foreach($arr as $a){
				if($catidstr==''){
						$catidstr=$a['cat_id'];
					}else{
						$catidstr.=','.$a['cat_id'];	
					}
				//在这里递归查询有没有子分类
				$b=getchildcatid($a['cat_id']);
				if($b!==false)$catidstr.=','.$b;
				}
		//返回分类字符串id
		  return $catidstr;
		}else{
			//没有子类直接返回false
			return false;
			}
		}

把里面的查询出来的分类数组替换成你查出来的就可以啦


微信号:kelicom QQ群:215861553 紧急求助须知
Win32/PHP/JS/Android/Python