Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP 循环删除无限分类子节点的实现代码_PHP教程

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

WBOY
WBOYasal
2016-07-21 15:05:181245semak imbas

复制代码 代码如下:

    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;
    }

?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/327713.htmlTechArticle复制代码 代码如下: ?php private function _deleteSubNode($ids){ $subNodes = array(); $mod = D('Node'); foreach (explode ( ',', $ids ) as $k){ $res = $this-_getSubNode($k,$su...
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn