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 反向排序和随机排序代码
Jun 30 PHP
关于访问控制的一首PHP面试题(对属性或方法的访问控制)
Sep 13 PHP
PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法
Jan 06 PHP
php xml常用函数的集合(比较详细)
Jun 06 PHP
ThinkPHP Mobile使用方法简明教程
Jun 18 PHP
ThinkPHP多表联合查询的常用方法
Mar 24 PHP
一个比较不错的PHP日历类分享
Nov 18 PHP
php include类文件超时问题处理
Feb 06 PHP
Yii2创建表单(ActiveForm)方法详解
Jul 23 PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
Feb 15 PHP
PHP将身份证正反面两张照片合成一张图片的代码
Apr 08 PHP
php中文语义分析实现方法示例
Sep 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
浅析linux下apache服务器的配置和管理
2013/08/10 PHP
PHP-Java-Bridge使用笔记
2014/09/22 PHP
PHP访问数据库集群的方法小结
2016/03/14 PHP
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
jquery 关于event.target使用的几点说明介绍
2013/04/26 Javascript
jquery 实现input输入什么div图层显示什么
2014/06/15 Javascript
JavaScript中的Promise使用详解
2015/06/24 Javascript
Angular+Node生成随机数的方法
2017/06/16 Javascript
JavaScript标准对象_动力节点Java学院整理
2017/06/27 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
React-Native之定时器Timer的实现代码
2017/10/04 Javascript
在微信小程序中使用vant的方法
2019/06/07 Javascript
小程序组件之自定义顶部导航实例
2019/06/12 Javascript
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
vue.js+elementUI实现点击左右箭头切换头像功能(类似轮播图效果)
2019/09/05 Javascript
用python读写excel的方法
2014/11/18 Python
深入理解python中的atexit模块
2017/03/07 Python
PyQt5 窗口切换与自定义对话框的实例
2019/06/20 Python
Python requests模块cookie实例解析
2020/04/14 Python
python中pyplot基础图标函数整理
2020/11/10 Python
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
有关HTML5中背景音乐的自动播放功能
2017/10/16 HTML / CSS
新加坡一家在线男士皮具品牌:Faire Leather Co.
2019/12/01 全球购物
开办加工厂创业计划书
2014/01/03 职场文书
鲜花方阵解说词
2014/02/13 职场文书
小学班主任寄语大全
2014/04/04 职场文书
励志演讲稿3分钟
2014/08/21 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
电子商务实训报告总结
2014/11/05 职场文书
爱心募捐感谢信
2015/01/22 职场文书
小学元宵节活动总结
2015/02/06 职场文书
基于python实现银行管理系统
2021/04/20 Python
详解MySQL主从复制及读写分离
2021/05/07 MySQL
MySQL中的引号和反引号的区别与用法详解
2021/10/24 MySQL
电频谱管理的原则是什么
2022/02/18 无线电