首页 > 代码库 > Think PHP递归获取所有的子分类的ID (删除当前及子分类)
Think PHP递归获取所有的子分类的ID (删除当前及子分类)
递归获取所有的子分类的ID:
//递归获取所有的子分类的ID function get_all_child($array,$id){ $arr = array(); foreach($array as $v){ if($v[‘pid‘] == $id){ $arr[] = $v[‘id‘]; $arr = array_merge($arr,get_all_child($array,$v[‘id‘])); }; }; return $arr; }
在进行删除栏目的时候,需要删除当前栏目下的所有子栏目:
//删除分类 public function delCate(){ $get = I(‘get.pid‘); $cateId = M(‘category‘)->field(array(‘id‘,‘pid‘))->select(); $delId = get_all_child($cateId,$get); $delId[] = $get; $where = array( ‘id‘ => array(‘IN‘,$delId) ); if(!M(‘category‘)->where($where)->delete()){ $this->error(‘删除失败‘); }; $this->success(‘删除成功‘,U(‘index‘)); }
Think PHP递归获取所有的子分类的ID (删除当前及子分类)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。