浅析PHP递归函数返回值使用方法
程序员文章站
2023-02-22 23:07:37
php经过长时间的发展,很多用户都很了解php了,php最初是1994年rasmus lerdorf创建的,刚刚开始只是一个简单的用perl语言编写的程序,用来统计他自己网...
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);
?>
下一篇: 3dmax长方体怎么添加贴图?