PHP递归的三种常用方式
今天小编就为大家分享一篇关于PHP递归的三种常用方式,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧。
递归:函数自己调用自己的一种编程方法,类似于循环,所以递归调用的函数中必须有终止条件,否则就会成为死循环
无限级:其实并不是真正的无限级,只是层级不确定,所以我们称之为无限级
因为常用递归实现无限级分类,所以我们习惯说无限级的时候带上分类。
递归的三种常用技法:
静态变量、全局变量、引用
一 静态变量方式
- function loop(){
- static $i = 0;
- echo $i.' ';
- $i++;
- if($i<10){
- loop();
- }
- }
- loop();//输出 0 1 2 3 4 5 6 7 8 9
二 全局变量方式
- $i = 0;
- function loopGlobal(){
- global $i;
- echo $i.' ';
- $i++;
- if($i<10){
- loopGlobal();
- }
- }
- loopGlobal();//输出 0 1 2 3 4 5 6 7 8 9
三 引用传参方式
- function loopReference(&$i=0){
- echo $i.' ';
- $i++;
- if($i<10){
- loopReference($i);
- }
- }
- loopReference();//输出 0 1 2 3 4 5 6 7 8 9
递归经常被用在处理无限级的问题上,通过以上三种手法再结合实际情况,灵活运用就可以解决自己的无限级问题,如果你是新手,我很乐意在评论里看到你的困惑。