浅析PHP递归函数返回值使用方法

yipeiwu_com5年前PHP代码库


PHP经过长时间的发展,很多用户都很了解PHP了,PHP最初是1994年Rasmus Lerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的访问者。后来又用C语言重新编写,包括可以访问数据库。


在 1995年以Personal Home Page Tools (PHP Tools) 开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP1.0。在这早期的版本中,提供了访客留言本、访客计数器等简单的功 能。以后越来越多的网站使用了PHP,并且强烈要求增加一些特性,比如循环语句和数组变量等等,在新的成员加入开发行列之后,在1995年 中,PHP2.0发布了。第二版定名为PHP/FI(Form Interpreter)。PHP/FI加入了对mSQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年底,有15000个网站使用 PHP/FI;时间到了1997年中,使用PHP/FI的网站数字超过五万个。而在1997年中,开始了第三版的开发计划,开发小组加入了 Zeev Suraski 及 Andi Gutmans,而第三版就定名为PHP3。2000年,PHP4.0又问世了,其中增加了许多新的特性。

在我的之前的编程中遇到了一个PHP递归函数的问题,其实是一个很简单的问题。问题出在PHP递归函数的返回值上。这是开始写的:

复制代码 代码如下:

<?php
functiontest($i)

$i-=4;  if($i<3)
{
return$i;

else

test($i);
}  
}  
echotest(30); 
?>

这段代码看起来没有问题,其实有else里面是有问题的。在这里执行的test没有返回值。所以虽然满足条件$i<3时return$i整个函数还是不会返回值的。对上面的PHP递归函数做如下修改:

复制代码 代码如下:

<?php
functiontest($i)

$i-=4;  if($i<3) 

return$i; 

else 

returntest($i);//增加return,让函数返回值 

}  
echotest(30); 
?>

相关文章

java解析json方法总结

工具包org.json.jar,是一个轻量级的,JAVA下的json构造和解析工具包,它还包含JSON与XML, HTTP headers, Cookies, CDL的转换。 这里推荐...

PHP中for循环语句的几种变型

PHP中for循环语句的几种变型˂!-- google 的广告条 2005年09月20日换位置 唉,22号被停了.郁闷,没作弊呀 11.27日重开了 ˂!-- goog...

PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)

本文实例讲述了PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法。分享给大家供大家参考,具体如下: PHP中strnatcmp()函数使用"自然"算法来比较两个字符串(...

浅析php学习的路线图

浅析php学习的路线图

1.php初级教程 初级教程主要的页面设置的,就是 html+js+div+css2.中级教程 中级的话开始接触php,就是php核心编程和数据库的交互3.高级课程 这个主要...

php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法

本文实例讲述了php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法。分享给大家供大家参考。具体如下: 调用方法非常简单。这个也需要数据库来支持。数据库中中文和拼音共...