淺析PHP遞歸函數(shù)返回值使用方法
PHP經(jīng)過長時間的發(fā)展,很多用戶都很了解PHP了,PHP最初是1994年Rasmus Lerdorf創(chuàng)建的,剛剛開始只是一個簡單的用Perl語言編寫的程序,用來統(tǒng)計他自己網(wǎng)站的訪問者。后來又用C語言重新編寫,包括可以訪問數(shù)據(jù)庫。
在 1995年以Personal Home Page Tools (PHP Tools) 開始對外發(fā)表第一個版本,Lerdorf寫了一些介紹此程序的文檔,并且發(fā)布了PHP1.0。在這早期的版本中,提供了訪客留言本、訪客計數(shù)器等簡單的功 能。以后越來越多的網(wǎng)站使用了PHP,并且強烈要求增加一些特性,比如循環(huán)語句和數(shù)組變量等等,在新的成員加入開發(fā)行列之后,在1995年 中,PHP2.0發(fā)布了。第二版定名為PHP/FI(Form Interpreter)。PHP/FI加入了對mSQL的支持,從此建立了PHP在動態(tài)網(wǎng)頁開發(fā)上的地位。到了1996年底,有15000個網(wǎng)站使用 PHP/FI;時間到了1997年中,使用PHP/FI的網(wǎng)站數(shù)字超過五萬個。而在1997年中,開始了第三版的開發(fā)計劃,開發(fā)小組加入了 Zeev Suraski 及 Andi Gutmans,而第三版就定名為PHP3。2000年,PHP4.0又問世了,其中增加了許多新的特性。
在我的之前的編程中遇到了一個PHP遞歸函數(shù)的問題,其實是一個很簡單的問題。問題出在PHP遞歸函數(shù)的返回值上。這是開始寫的:
<?php
functiontest($i)
{
$i-=4; if($i<3)
{
return$i;
}
else
{
test($i);
}
}
echotest(30);
?>
這段代碼看起來沒有問題,其實有else里面是有問題的。在這里執(zhí)行的test沒有返回值。所以雖然滿足條件$i<3時return$i整個函數(shù)還是不會返回值的。對上面的PHP遞歸函數(shù)做如下修改:
<?php
functiontest($i)
{
$i-=4; if($i<3)
{
return$i;
}
else
{
returntest($i);//增加return,讓函數(shù)返回值
}
}
echotest(30);
?>
相關(guān)文章
使用GROUP BY的時候如何統(tǒng)計記錄條數(shù) COUNT(*) DISTINCT
在有g(shù)roup by的時候,如何統(tǒng)計結(jié)果記錄的數(shù)量?需要的朋友可以參考下。2011-04-04php將fileterms函數(shù)返回的結(jié)果變成可讀的形式
php將fileterms函數(shù)返回的結(jié)果變成可讀的形式,如: rwx--rx--x2011-04-04PHP基于ICU擴展intl快速實現(xiàn)漢字轉(zhuǎn)拼音及按拼音首字母分組排序的方法
這篇文章主要介紹了PHP基于ICU擴展intl快速實現(xiàn)漢字轉(zhuǎn)拼音及按拼音首字母分組排序的方法,結(jié)合實例形式分析了ICU擴展intl的實現(xiàn)方法與拼音轉(zhuǎn)換、排序等相關(guān)操作技巧,需要的朋友可以參考下2017-05-05php做下載文件的實現(xiàn)代碼及文件名中亂碼解決方法
php做下載文件的實現(xiàn)代碼及文件名中亂碼解決方法,需要的朋友可以參考下。2011-02-02php中json_encode UTF-8中文亂碼的更好解決方法
網(wǎng)上找到說json_encode編碼設(shè)置為UTF-8中文就不會亂碼,在用過一段時間之后就不太管用了,下面與大家分享更好的方法2014-09-09