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

递归获取所有的子分类的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‘));
}
时间: 2024-10-14 01:52:58

问答项目---删除分类的时删除其子分类的相关文章

magento 获取分类及其子分类 多种情况举例

1. 获取指定分类id 下的子分类 // 例如获取 分类id为 13 的子分类信息 <?php $root = Mage::getModel('catalog/category')->load(13); $subCat = explode(',',$root->getChildren()); $collection = $root ->getCollection() ->addAttributeToSelect("*") ->addFieldToFi

magento 获得子分类的链接,名称和图片

$subcategories = Mage::getModel('catalog/category')->getCategories($current_category_id); foreach($subcategories as $cat){ $cat->getName();//名称 Mage::helper('catalog/category')->getCategoryUrl($cat);//子分类的链接 $img_path = Mage::getModel('catalog/ca

source insight 保存时删除多余空格,去除多余空格 space tab键

source insight 保存时删除多余空格,去除多余空格 space tab键 摘自:https://blog.csdn.net/lanmanck/article/details/8638391 2013年03月05日 15:57:28 lanmanck 阅读数:16527更多 个人分类: 嵌入式/Linux/C语言 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/lanmanck/article/details/8638391 上传源码时

sqoop导入时删除string类型字段的特殊字符

如果你指定了\n为sqoop导入的换行符,mysql的某个string字段的值如果包含了\n, 则会导致sqoop导入多出一行记录. 有一个选项 -hive-drop-import-delims Drops \n, \r, and \01 from string fields when importing to Hive. 这样\n \r 和\01都被自动删除,不会捣乱了.sqoop导入时删除string类型字段的特殊字符,布布扣,bubuko.com

java 集合遍历时删除元素

本文探讨集合在遍历时删除其中元素的一些注意事项,代码如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 import java.util.ArrayList; import java.util.Iterator; import java

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

递归重新排序无限极子分类数组方法: // 递归重新排序无限极子分类数组 function recursive($array,$pid=0,$level=0){ $arr = array(); foreach ($array as $v) { if($v['pid'] == $pid){ $v['level'] = $level; $v['html'] = str_repeat('--',$level); $arr[] = $v; $arr = array_merge($arr,recursive

Java动态 遍历List 时删除List特征元素 异常问题 及解决方式总结

首先,这是一个极其简单的问题,大牛可忽略,新手可能会遇到,Java中遍历某个List 时删除该List元素 会抛出异常. 这一个简单的问题再高手严重不值一提,但新手可能会比较困惑,用哪种方式可以安全有效的实现遍历list删除某些特征元素? 方式: 方法1.普通for循环 遍历List,删List除自身 特征条目: 方法2.高级for循环 遍历List,删除List自身 特定条目: 方法3.引入参考List,for循环遍历删除原List 特定条目: 方法4.利用iterator 遍历删除List特

Java集合遍历时删除

public static void main(String[] args){ List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); Iterator<Integer> interator = list.iterator(); while(interator.hasNext()){ Integer i

多线程14-遍历集合时删除元素问题分析

1. 问题 创建一个User类: package cn.itcast.heima2; public class User implements Cloneable{ private String name; private int age; public User(String name, int age) { this.name = name; this.age = age; } public boolean equals(Object obj) { if(this == obj) { ret