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 相关文章推荐
PHP的explode和implode的使用说明
Jul 17 PHP
php json_encode奇怪问题说明
Sep 27 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
Oct 31 PHP
基于php split()函数的用法详解
Jun 05 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 PHP
PHP实现阳历到农历转换的类实例
Mar 07 PHP
Zend Framework实现留言本分页功能(附demo源码下载)
Mar 22 PHP
php实现通过soap调用.Net的WebService asmx文件
Feb 27 PHP
PHP实现微信图片上传到服务器的方法示例
Jun 29 PHP
基于PHP常用文件函数和目录函数整理
Aug 17 PHP
laravel框架中控制器的创建和使用方法分析
Nov 23 PHP
php swoft框架实例用法
Dec 22 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计算两个日期相差天数的代码
2015/12/23 PHP
YiiFramework入门知识点总结(图文教程)
2015/12/28 PHP
PHP实现的简单留言板功能示例【基于thinkPHP框架】
2018/12/07 PHP
jQuery fadeTo方法调整图片的透明度使用介绍
2013/05/06 Javascript
javascript中简单的进制转换代码实例
2013/10/26 Javascript
jquery ajax传递中文参数乱码问题及解决方法说明
2014/02/07 Javascript
深入理解JavaScript系列(18):面向对象编程之ECMAScript实现
2015/03/05 Javascript
手机端页面rem宽度自适应脚本
2015/05/20 Javascript
JS简单随机数生成方法
2016/09/05 Javascript
浅谈JS对html标签的属性的干预以及对CSS样式表属性的干预
2017/06/25 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
2017/08/25 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
vue 解决数组赋值无法渲染在页面的问题
2019/10/28 Javascript
node.js中 redis 的安装和基本操作示例
2020/02/10 Javascript
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
python对配置文件.ini进行增删改查操作的方法示例
2017/07/28 Python
Python实现的网页截图功能【PyQt4与selenium组件】
2018/07/12 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
2018/07/27 Python
Python读写文件模式和文件对象方法实例详解
2019/09/17 Python
Python 爬虫实现增加播客访问量的方法实现
2019/10/31 Python
python中for in的用法详解
2020/04/17 Python
浅谈Python中的继承
2020/06/19 Python
如何使用scrapy中的ItemLoader提取数据
2020/09/30 Python
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
2012/12/28 HTML / CSS
华为c/c++笔试题
2016/01/25 面试题
上班早退检讨书
2014/01/09 职场文书
电子信息专业自荐书
2014/02/04 职场文书
法律专业学生的自我评价
2014/02/07 职场文书
小学生十佳少年事迹材料
2014/08/20 职场文书
怎么写工作检讨书
2014/11/16 职场文书
应届生求职自荐信范文
2015/03/04 职场文书
2016大一新生入学教育心得体会
2016/01/23 职场文书
吃通javascript正则表达式
2021/04/21 Javascript
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
nodejs利用readline提示输入内容实例代码
2021/07/15 NodeJs