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