php無(wú)限遞歸查詢(xún)分類(lèi)

php無(wú)限遞歸查詢(xún)分類(lèi)

ID:15531471

大?。?52.50 KB

頁(yè)數(shù):4頁(yè)

時(shí)間:2018-08-03

php無(wú)限遞歸查詢(xún)分類(lèi)_第1頁(yè)
php無(wú)限遞歸查詢(xún)分類(lèi)_第2頁(yè)
php無(wú)限遞歸查詢(xún)分類(lèi)_第3頁(yè)
php無(wú)限遞歸查詢(xún)分類(lèi)_第4頁(yè)
資源描述:

《php無(wú)限遞歸查詢(xún)分類(lèi)》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、無(wú)限遞歸查詢(xún)分類(lèi)工作理解1.首先我們來(lái)看一下foreach循環(huán)是什么意思,如果你懂foreach就可以跳過(guò)此步了。開(kāi)始的時(shí)候我也不理解foreach循環(huán)遍歷數(shù)組是什么東西,廢話(huà)少說(shuō),我們進(jìn)入主題。我們先看一下,下面這個(gè)一維數(shù)組,一維數(shù)組就不用說(shuō)了吧$a=array('零','一','二','三','四','無(wú)','六','七','八','九');//看一下三種輸出,你應(yīng)該明白了,foreach遍歷數(shù)組應(yīng)該是干什么了吧!其實(shí)也就是把數(shù)組中的值給弄出來(lái)而已,當(dāng)然你也可以用echo一個(gè)一個(gè)的給輸出出來(lái),只要你有勁,foreach就簡(jiǎn)單幾句話(huà)搞定??赐阥oreach我們真正進(jìn)入主題,看一下無(wú)限遞歸到底

2、是怎樣工作的。functiongetsort($table,$parent_id=0,$t=-1){$t++;global$temp;$sql="SELECT*FROM`$table`WHERE`parent_id`=$parent_idORDERBY`sort_id`";$query=mysql_query($sql);$data=array();while($res=mysql_fetch_assoc($query))//循環(huán)出父級(jí)分類(lèi){$data[]=$res;}if(!empty($data)){foreach($dataas$key=>$val){$val['sort_name']=

3、str_repeat(' ',$t*3).'

4、--'.$val['sort_name'];$temp[]=$val;getsort($table,$val['sort_id'],$t);}}return$temp;}看上面的while循環(huán),當(dāng)while循環(huán)完成以后,告訴我$data這個(gè)二維數(shù)組里面存的是什么?當(dāng)然是一個(gè)二維數(shù)組了,而且是parent_id=0的所有數(shù)據(jù),也就是第一級(jí)分類(lèi)了。如下圖:再來(lái)看看下面這一段程序if(!empty($data))//如果$date里面不為空,即里面有數(shù)據(jù),就會(huì)執(zhí)行下面的foreach循環(huán){foreach($dataas$key=>$val){$

5、val['sort_name']=str_repeat(' ',$t*3).'

6、--'.$val['sort_name'];$temp[]=$val;//把變形的sort_name在注入一個(gè)數(shù)組里getsort($table,$val['sort_id'],$t);}}首先$data不為空吧,那么foreach循環(huán)就會(huì)執(zhí)行了,1.foreach首先取出一條數(shù)據(jù)即$data[0],注意看上圖也就是sort_id=1的所有數(shù)據(jù)2.把sort_id=1的這條數(shù)據(jù)里的sort_name值給變化一下,方便做出階梯效果的分類(lèi)。3.把變形的sort_name在注入一個(gè)數(shù)組里。4.然后調(diào)用自己get

7、sort,關(guān)鍵就在這個(gè)地方,好多人剛開(kāi)始不理解,我剛開(kāi)始也很不理解關(guān)鍵就在下面接下來(lái)做什么?看它是怎么調(diào)用自己的,注意它調(diào)用自己時(shí),傳過(guò)去的id是$val[‘sort_id’];也就是說(shuō),下一次要查詢(xún)的是parent_id=1的所有數(shù)據(jù)是吧?5.最繞人的地方就是下面的解釋?zhuān)?.第4部調(diào)用自己,去查詢(xún)sort_id=1的所有子分類(lèi),和上面一樣的循環(huán)過(guò)程。foreach首先取出的是第一條數(shù)據(jù),后面是不是還有4條數(shù)據(jù)沒(méi)有循環(huán)。當(dāng)sort_id=1下面的所有分類(lèi)查詢(xún)完以后,接著取出第二條數(shù)據(jù),也就是$data[1],注意看上圖也就是sort_id=2的所有數(shù)據(jù),接著就是重復(fù)上面的動(dòng)作。7.還有一種比較

8、好的理解方法,當(dāng)它調(diào)用自己時(shí)即getsort($table,$val['sort_id'],$t);把這句話(huà)替換成getsort()函數(shù)它本身,就容易理解多了??赡芪医忉尩倪€不夠清楚,不知到你是否理解了。調(diào)用一下這個(gè)函數(shù),然后循環(huán)一下就是下圖這個(gè)樣子$a=getsort('article_sort');foreach($aas$key=>$val){echo'

';echo$val['sort_name'];}

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。