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