程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP_遞歸函數時return的Bug

PHP_遞歸函數時return的Bug

編輯:關於PHP編程

最近在用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
?>


作者:四雲麒麟

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved