PHP 无限极分类
undefinedundefined
/**
* 无限极分类
* @param $arr 所有分类
* @param $pid
* @param $step
* @return array
*/
public function getTree($arr,$pid,$step){
global $tree;
foreach($arr as $key=>$val) {
if($val['cid'] == $pid) {
$flg = str_repeat("└--",$step);
$val['title'] = $flg.$val['title'];
$tree[] = $val;
$this->getTree($arr , $val['id'] ,$step+1);
}
}
return $tree;
}
+ /**
+ * 获取该栏目的所有子栏目ids
+ * @param $id
+ * @param $ids
+ * @return array
+ * @author 宁佳兵 <meilijing.ning@foxmail.com>
+ */
+ public function getChild($id, &$ids)
+ {
+ $res = D("article_category")->where(["parent_id"=>$id])->select();
+ if (is_array($res)){
+ foreach ($res as $k=>$v){
+ $ids[] = $v['id'];
+ $this->getChild($v['id'],$ids);
+ }
+ }
+ return $ids;
+ }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗