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

yipeiwu_com7年前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后门URL的防范

例如,下面WEB应用可能向登入用户显示敏感信息:复制代码 代码如下:<?php$authenticated = FALSE;$authenticated = check_auth(...

完美解决PHP中文乱码

一.首先是PHP网页的编码 1. php文件本身的编码与网页的编码应匹配 a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/ht...

php简单防盗链验证实现方法 原创

这里分析了php的简单防盗链实现方法。分享飞大家供大家参考。具体如下: index.php页面如下: <html> <head> <meta http-...

简单的PHP缓存设计实现代码

复制代码 代码如下:<?php //本功能主要是利用文件修改时间函数filemtime与现在时间作减法判断是否更新内容。 $cahetime=2;//设置过期时间 $cahefil...

解决Laravel blade模板转义html标签的问题

解决Laravel blade模板转义html标签的问题

解决Laravel blade模板转义html标签的问题: 后台textarea提交到表里面的数据展现到前端页面时(在后台已使用nl2br()函数进行转换),直接显示如下: 很尴尬!!...