使用遞歸函數回顯選單樹
問題:
為特定資料結構建構子是一個共同的挑戰。這是需要遞歸函數來顯示分層選單的情況。
情況:
給定一個 MySQL 資料庫表,其中根列指示每筆記錄的父類別,建立具有多個層級的 HTML 選單樹。所需的HTML 結構為:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
函數:
產生HTML 樹結構的遞歸函數如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
執行:
1 2 3 4 5 6 7 8 |
|
最佳化:
防止空巢狀
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
為了獲得最佳效能,可以考慮在資料庫表中新增一個ChildCount 資料列,表示每個父類別的子類別數量,並修改相應地發揮作用。這避免了遞歸期間不必要的資料庫查找。
以上是如何使用遞歸函數從分層 MySQL 資料庫表產生多層 HTML 選單樹?的詳細內容。更多資訊請關注PHP中文網其他相關文章!