PHP头条
热点:

PHP_递归函数时return的Bug


最近在用PHP写一些设计模式的小例子,有大量的设计模式都会递归调用对象或者函数。有的时候需要返回处理状态,就会用到return。在JAVA中 只要在函数内部return就可以得到最后的结果。而在PHP中必须要在掉过递归函数的时候加上return才能正常使用。

举个例子

 
01
<?php
02
/**
03
*这样的写法在调用时,当$i < 3时需要递归重新调用函数。如果是在JAVA中,就可以返回$i的值,而PHP就不能。
04
*/
05
function TestReturn($i){
06
    if($i < 3)
07
    {
08
        $i++;
09
        TestReturn($i);
10
    }
11
    return $i;
12
}
13
 
14
/**
15
*在PHP中,必须要在递归调用函数时加上return
16
*/
17
function TestReturn($i){
18
    if($i < 3)
19
    {
20
        $i++;
21
        return TestReturn($i);
22
    }
23
    return $i;
24
}
25
 
26
?>


作者:四云麒麟

www.phpzy.comtrue/phprm/15722.htmlTechArticlePHP_递归函数时return的Bug 最近在用PHP写一些设计模式的小例子,有大量的设计模式都会递归调用对象或者函数。有的时候需要返回处理状态,就会用到return。在JAVA中 只要在函数内部retu...

相关文章

    暂无相关文章
相关频道:

PHP之友评论

今天推荐