递归无限分类原理

递归无限分类原理_第1张图片

我们必须要有条件判断否则就无限循环 

我们递归返回值一般三种技巧 因为递归会把值丢了

1 $_GLOBALS[result]

2 static $result

3 参数应用&


输出1,2,3,4,5,6,7,8,9

第一种,引用传递

function deeploop(&$i=1){

    echo $i;

    $i++;

    if($i<10){

        deeploop($i)

    }

}


然后deeploop() 


第二种,global

$i=1

function deeploop(){

    global $i; 

    echo $i;

    $i++;

    if($i<10){

        deeploop($i)

    }

}

然后deeploop()

第三种,static

function deeploop(){

    static $i=1;

    echo $i;

    $i++;

    if($i<10){

        deeploop($i)

    }

}

deeploop();就可以了



递归无限分类原理

每一个分类都需要记录它的父级id,当为顶级分类时,父级id为0

这样无论哪个分类,都可以通过父级分类id一层层去查明他的所有父级,以便清楚知道它所属何种分类,层级深度为几

递归无限分类原理_第2张图片

 递归无限分类原理_第3张图片


递归无限分类原理_第4张图片

递归无限分类原理_第5张图片

表单数据:
insert into fenlei(id,pid,catename,cateorder,createtime) values
(1,0,'新闻',0,0),
(2,0,'图片',0,0),
(3,1,'国内新闻',0,0),
(4,1,'国际新闻',0,0),
(5,3,'北京新闻',0,0),
(6,4,'美国新闻',0,0),
(7,2,'美女图片',0,0),
(8,2,'风景图片',0,0),
(9,7,'日韩明星',0,0),

(10,9,'大陆明星',0,0);


你可能感兴趣的:(PHP开发)