PHP遞歸函數

PHP還支持遞歸函數調用像C/C++。 在這種情況下,我們在函數內調用當前函數。 它也稱爲遞歸。

建議避免遞歸函數調用超過200個遞歸級別,因爲它可能會摧毀堆棧,並最終可能導致腳本的終止。

示例1:打印數字

<?php    
function display($number) {    
    if($number<=5){    
     echo "$number <br/>";    
     display($number+1);    
    }  
}    

display(1);    
?>

執行上面代碼,得到以下結果 -

1
2
3
4
5

示例2:數字階乘

<?php    
function factorial($n)    
{    
    if ($n < 0)    
        return -1; /*Wrong value*/    
    if ($n == 0)    
        return 1; /*Terminating condition*/    
    return ($n * factorial ($n -1));    
}    

echo factorial(5);    
?>

執行上面代碼得到以下結果 -

120