帝国CMS判断栏目有无下级栏目的方法,非islast判断!


avatar
pcwnas 2023-04-21 195

帝国CMS如果要判断栏目有没有下级栏目通用的方法是判断islast字段,但是这个字段只能判断这个栏目下面有没有最终栏目,不能判断这个栏目下面有没有一般栏目。所以用islast字段判断的方法就不行了!模板由于种种神(dan)奇(teng)的要求需要完美判断一个栏目有没有下级栏目,于是就有了下面的代码:$arr=array(); $arr1=$empire->query(“select classid,classname,sonclass,featherclass,islast from {$dbtbpre}enewsclass”); while($arr2=$empire->fetch($arr1)){ $arr[]=$arr2[‘featherclass’]; } $arr=implode(“,”,$arr);上面总体代码含义为,定义一个数组变量,查询所有栏目,循环输出父栏目featherclass字段数据到数组,数组转为字符串。那么这里就会得到所有是父栏目的ID:各种|1|2|,|5|26|类似这样的一堆的字符串了!那么接下来就好办了。$zi=”|$s1[classid]|”;if(strstr($arr,$zi)){$down1=’有下级栏目’;}获取到栏目ID:比如|2|,判断这个ID|2|在字符串中存在,那么他肯定是父栏目了!经过测试这个是最准确的判断方法,虽然比较繁琐,但是满足开发需求!期待其他高手补充!