PHP递归返回值时出现的问题解决办法


Posted in PHP onFebruary 19, 2013

我们在使用PHP递归时,会遇到各种各样的问题,其中比较令人苦恼的是有关PHP递归返回值时出现的问题。其实细细想想这是一个很简单的问题。可就是这个简单的问题困扰了半个下午。问题出在递归函数的返回值上。

这是开始写的:

<?php   
function test($i)   
{   
$i -= 4;   
if($i < 3)   
{   
return $i;   
}   
else    
{   
test($i);   
}   
}   
echo test(30);   
?>

这段代码看起来没有问题,其实有else里面是有问题的。在这里执行的test没有返回值。所以虽然满足条件$i < 3时 return $i整个函数还是不会返回值的。对上面的PHP递归返回值函数做如下修改:
< ?php   
function test($i)   
{   
$i -= 4;   
if($i < 3)   
{   
return $i;   
}   
else    
{   
return test($i); //增加return, 让函数返回值   
}   
}   
echo test(30);   
?>

以上代码示例就是PHP递归返回值出现问题时的具体解决方法。
PHP 相关文章推荐
BBS(php &amp; mysql)完整版(二)
Oct 09 PHP
PHP源码之 ext/mysql扩展部分
Jul 17 PHP
PHP 文件缓存的性能测试
Apr 25 PHP
浅析php中常量,变量的作用域和生存周期
Aug 10 PHP
php中in_array函数用法探究
Nov 25 PHP
PHP动态规划解决0-1背包问题实例分析
Mar 23 PHP
在CentOS系统上从零开始搭建WordPress博客的全流程记录
Apr 21 PHP
php对接java现实加签验签的实例
Nov 25 PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 PHP
PHP中Static(静态)关键字功能与用法实例分析
Apr 05 PHP
PHP的cookie与session原理及用法详解
Sep 27 PHP
php的无刷新操作实现方法分析
Feb 28 PHP
PHP递归算法的详细示例分析
Feb 19 #PHP
七款最流行的PHP本地服务器分享
Feb 19 #PHP
浅析PHP递归函数返回值使用方法
Feb 18 #PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
Feb 18 #PHP
php添加文章时生成静态HTML文章的实现代码
Feb 17 #PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
Feb 17 #PHP
php去除换行符的方法小结(PHP_EOL变量的使用)
Feb 16 #PHP
You might like
php数组函数序列之array_pop() - 删除数组中的最后一个元素
2011/11/07 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
PHP实现二维数组根据key进行排序的方法
2016/12/30 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
2020/05/02 PHP
javascript的键盘控制事件说明
2008/04/15 Javascript
JavaScript 对象模型 执行模型
2010/10/15 Javascript
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
js获取判断上传文件后缀名的示例代码
2014/02/19 Javascript
jquery中ajax跨域方法实例分析
2015/12/18 Javascript
Node.js+Express配置入门教程
2016/05/19 Javascript
jqueryUI tab标签页代码分享
2017/10/09 jQuery
vue 开发一个按钮组件的示例代码
2018/03/27 Javascript
详解node.js的http模块实例演示
2018/07/12 Javascript
webpack打包非模块化js的方法
2018/10/24 Javascript
基于vue实现圆形菜单栏组件
2019/07/05 Javascript
[49:35]KG vs SECRET 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
零基础写python爬虫之使用Scrapy框架编写爬虫
2014/11/07 Python
用Python抢过年的火车票附源码
2015/12/07 Python
Django中更改默认数据库为mysql的方法示例
2018/12/05 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
python mysql断开重连的实现方法
2019/07/26 Python
Python socket实现的文件下载器功能示例
2019/11/15 Python
python实时监控logstash日志代码
2020/04/27 Python
利用Python实现朋友圈中的九宫格图片效果
2020/09/03 Python
建筑设计师岗位职责
2013/11/18 职场文书
违纪检讨书2000字
2014/02/08 职场文书
售后求职信范文
2014/03/15 职场文书
小学开学典礼主持词
2014/03/19 职场文书
服务标语口号
2014/07/01 职场文书
2015会计试用期工作总结
2014/12/12 职场文书
三峡大坝导游词
2015/01/31 职场文书
商场广播稿范文
2015/08/19 职场文书
六五普法心得体会2016
2016/01/21 职场文书
postgresql 删除重复数据案例详解
2021/08/02 PostgreSQL
JavaScript中reduce()的用法
2022/05/11 Javascript
在Oracle表中进行关键词搜索的过程
2022/06/10 Oracle