"圣经"递归问题的困惑 想了一天555也无解... 本帖最后由 iamsai 于 2013-09-24 21:00:08 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 return;是返回的意思,也就这函数的程序不再往下面跑了,函数不需要返回值,所以就不加了! 为什么会输出hello呢有谁能帮我分析分析 $str='hello';var_dump(reverse_i($str)); //看看返回了什么function reverse_i($str){ echo $str, PHP_EOL; //看看传入了什么 if(strlen($str)>0) { reverse_i(substr($str,1)); } echo substr($str,0,1); return;}helloellollolooollehNULL echo substr($str,0,1); 的功能不是输出字符串的第一个字符吗?那它输入完0以后return NULL到调用函数程序不就结束了吗?为什么会输出llehNULL if(strlen($str)>0) { reverse_i(substr($str,1)); //这是一次递归调用 <--- 返回到这里 } echo substr($str,0,1); return; 在第一次递归结束后 Return是返回o这个值到if的函数体吗?怎么和c语言不一样?不是直接返回这个值到调用它的函数? 在第一次递归结束后 Return是返回o这个值到if的函数体吗?怎么和c语言不一样?不是直接返回这个值到调用它的函数? 在第一次递归结束后 Return是返回o这个值到if的函数体吗?怎么和c语言不一样?不是直接返回这个值到调用它的函数? 为什么 看了半天的PHP还是不懂啥的 javaScript 在分页显示中传值 查询用户回帖的标题和发帖时间 在线等`!!!!! 一个关于post传递数据的问题 新手转码问题 如何在发布的内容中包含 PHP 代码 高手请进,流水号重复的问题,求助!!!高分!!! 如何测试apache的并发数(压力测试) 请教连接PGSQL的问题 PHP向txt文件里面写入字符串,换行问题 php socket编程 读完成后写阻塞 下面这段代码怎么进行htmlentities()之类的html过滤
{
echo $str, PHP_EOL; //看看传入了什么
if(strlen($str)>0)
{
reverse_i(substr($str,1));
}
echo substr($str,0,1);
return;
}
hello
ello
llo
lo
oollehNULL
{
reverse_i(substr($str,1)); //这是一次递归调用
<--- 返回到这里
}
echo substr($str,0,1);
return;