PHP 循环删除无限分类子节点的实现代码

yipeiwu_com5年前PHP代码库

复制代码 代码如下:

<?php
    private  function _deleteSubNode($ids){

        $subNodes = array();
        $mod = D('Node');
        foreach (explode ( ',', $ids ) as $k){
            $res = $this->_getSubNode($k,$subNodes[$k],$mod);  //获取子节点
            if(!empty($res[0])){
                foreach($res as $k => $nid){
                    $mod->where('id = '.$nid)->delete();       //删除子节点
                }
            }
        }
        return ;
    }

    private function _getSubNode($id, &$arr,$mod){

         $condition = array ('pid' => array ('eq', $id ));
         $ret = $mod->where($condition)->getField('id');
         if(!empty($ret[0])){
             foreach ($ret as $k => $node){
                 $arr[] = $node['id'];
                 $this->_getSubNode($node['id'], $arr, $mod);
            }
         }
         return $arr;
    }

?>

相关文章

php中操作memcached缓存进行增删改查数据的实现代码

核心代码: <?php //创建一个memcache对象实例 $memcache = new Memcache; if(!$memcache->conn...

php防攻击代码升级版

不过最近几天突然糟糕了起来,有90%的攻击已经没法拦截,请看下图一天的统计: IP攻击及开始时间 攻击次数 地点 备注 125.165.1.42--2010-11-1...

php socket通信(tcp/udp)实例分析

本文实例讲述了php socket通信(tcp/udp)方法。分享给大家供大家参考,具体如下: 注意 1.在socket_bind的时候ip地址不能真回环地址如127.0.0.1 2.s...

PHP编写登录验证码功能 附调用方法

本文实例为大家分享了一个PHP写的登录验证码功能,供大家参考,具体内容如下  ShowKey.php <?php session_start(); //设置C...

php select,radio和checkbox默认选择的实现方法

这是扩展yibing的select默认选择的实现方法 复制代码 代码如下: <select name="wuyeleixing" size="1"> <option &...