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写的小东西
Dec 06 PHP
常用的php ADODB使用方法集锦
Mar 25 PHP
php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
May 15 PHP
PHP中开启gzip压缩的2种方法
Jan 31 PHP
PHP使用redis实现统计缓存mysql压力的方法
Nov 14 PHP
composer.lock文件的作用
Feb 03 PHP
php快速排序原理与实现方法分析
May 26 PHP
Yii2中事务的使用实例代码详解
Sep 07 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
基于php编程规范(详解)
Aug 17 PHP
laravel框架邮箱认证实现方法详解
Nov 22 PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
Feb 10 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下使用iconv需要注意的问题
2010/11/20 PHP
Yii框架form表单用法实例
2014/12/04 PHP
微信公众号OAuth2.0网页授权问题浅析
2017/01/21 PHP
Laravel Eloquent ORM 多条件查询的例子
2019/10/10 PHP
可简单避免的三个JS发布错误的详细介绍
2013/08/02 Javascript
js 实现菜单左右滚动显示示例介绍
2013/11/21 Javascript
jquery的ajax跨域请求原理和示例
2014/05/08 Javascript
基于JQuery和CSS3实现仿Apple TV海报背景视觉差特效源码分享
2015/09/21 Javascript
jQuery实现删除li节点的方法
2016/12/06 Javascript
解析利用javascript如何判断一个数为素数
2016/12/08 Javascript
JavaScript实现左右下拉框动态增删示例
2017/03/09 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
vue 里面使用axios 和封装的示例代码
2017/09/01 Javascript
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
Vue 路由切换时页面内容没有重新加载的解决方法
2018/09/01 Javascript
重学JS之显示强制类型转换详解
2019/06/30 Javascript
JS实现扫码枪扫描二维码功能
2020/01/03 Javascript
ES6中的Javascript解构的实现
2020/10/30 Javascript
JavaScript如何实现防止重复的网络请求的示例
2021/01/28 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
可用于监控 mysql Master Slave 状态的python代码
2013/02/10 Python
Python实现的基于优先等级分配糖果问题算法示例
2018/04/25 Python
用python写一个定时提醒程序的实现代码
2019/07/22 Python
Python爬虫实现vip电影下载的示例代码
2020/04/20 Python
Python爬虫破解登陆哔哩哔哩的方法
2020/11/17 Python
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
澳大利亚巧克力花束和礼品网站:Tastebuds
2019/03/15 全球购物
大四自我鉴定范文
2013/10/06 职场文书
办公室保洁员岗位职责
2013/12/02 职场文书
孝敬父母的活动方案
2014/08/31 职场文书
2015年机关作风和效能建设工作总结
2015/07/23 职场文书
2016廉洁从政心得体会
2016/01/19 职场文书
某某店铺的开业庆典主持词范本
2019/11/25 职场文书
python异常中else的实例用法
2021/06/15 Python
python读取mnist数据集方法案例详解
2021/09/04 Python
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server