淺析PHP遞迴函式傳回值使用方法_php技巧

來源:互聯網
上載者:User


PHP經過長時間的發展,很多使用者都很瞭解PHP了,PHP最初是1994年Rasmus Lerdorf建立的,剛剛開始只是一個簡單的用Perl語言編寫的程式,用來統計他自己網站的訪問者。後來又用C語言重新編寫,包括可以訪問資料庫。


在 1995年以Personal Home Page Tools (PHP Tools) 開始對外發表第一個版本,Lerdorf寫了一些介紹此程式的文檔,並且發布了PHP1.0。在這早期的版本中,提供了訪客留言本、訪客計數器等簡單的功 能。以後越來越多的網站使用了PHP,並且強烈要求增加一些特性,比如迴圈語句和陣列變數等等,在新的成員加入開發行列之後,在1995年 中,PHP2.0發布了。第二版定名為PHP/FI(Form Interpreter)。PHP/FI加入了對mSQL的支援,從此建立了PHP在動態網頁開發上的地位。到了1996年底,有15000個網站使用 PHP/FI;時間到了1997年中,使用PHP/FI的網站數字超過五萬個。而在1997年中,開始了第三版的開發計劃,開發小組加入了 Zeev Suraski 及 Andi Gutmans,而第三版就定名為PHP3。2000年,PHP4.0又問世了,其中增加了許多新的特性。

在我的之前的編程中遇到了一個PHP遞迴函式的問題,其實是一個很簡單的問題。問題出在PHP遞迴函式的傳回值上。這是開始寫的:

複製代碼 代碼如下:

<?php
functiontest($i)

$i-=4;  if($i<3)
{
return$i;

else

test($i);
}  
}  
echotest(30); 
?>

這段代碼看起來沒有問題,其實有else裡面是有問題的。在這裡執行的test沒有傳回值。所以雖然滿足條件$i<3時return$i整個函數還是不會傳回值的。對上面的PHP遞迴函式做如下修改:

複製代碼 代碼如下:

<?php
functiontest($i)

$i-=4;  if($i<3) 

return$i; 

else 

returntest($i);//增加return,讓函數傳回值 

}  
echotest(30); 
?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.