码迷,mamicode.com
首页 > Web开发 > 详细

辛星与您解读PHP的递归

时间:2014-07-26 15:31:19      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:php   递归   辛星   无限级分类   列表   

     其实递归放到其他编程语言里面可能是初学函数的一个练习题,但是由于PHP的特殊性,我们把它拿出来专门讲解一下,首先说一下什么是递归把,我最早认识递归是求一个数的阶乘,比如我们写一个函数,然后求它的阶乘是多少。

    看下面的PHP代码:

<?php 

//求n!的值
function xin($n){
	if($n > 0){
		return $n *xin($n -1 );
	}else{
		return 1;
	}
}

echo xin(4);
 它的输出结果当然是24了,什么意思呢,很简单,我们给xin函数传递一个值,如果它比0大,那么就用它去乘以调用$n-1的xin函数的结果,当然,读者可能有N种方式去计算n的阶乘的计算方式,但是无疑,这是用递归来计算的一种。

     可以看出,PHP中的递归是很类似与高中学习的数学归纳法的,原理非常简单易懂。它的大致步骤就是首先判断是否需要向下递归,如果是的话,给出一个规则,如果不能,需要及时的返回,把控制权交给它的调用者,基本原理就讲这么多了,还有事,先写到这里。


辛星与您解读PHP的递归,布布扣,bubuko.com

辛星与您解读PHP的递归

标签:php   递归   辛星   无限级分类   列表   

原文地址:http://blog.csdn.net/xinguimeng/article/details/38136629

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!