问答项目---删除分类的时删除其子分类

Posted 帅到要去报警

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问答项目---删除分类的时删除其子分类相关的知识,希望对你有一定的参考价值。

递归获取所有的子分类的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‘));
}

 

以上是关于问答项目---删除分类的时删除其子分类的主要内容,如果未能解决你的问题,请参考以下文章

软工大项目分工

问答项目---递归重新排序无限极子分类数组

商城项目13_查询分组关联属性删除新增查询分组未关联的属性调整会员服务获取分类关联的品牌

商城项目13_查询分组关联属性删除新增查询分组未关联的属性调整会员服务获取分类关联的品牌

第175天学习打卡(项目 谷粒商城17 API三级分类 删除页面效果 逻辑删除)

第175天学习打卡(项目 谷粒商城17 API三级分类 删除页面效果 逻辑删除)