本文章總結了兩款PHP無限級分類實現程序代碼,有需要學習的朋友可參考一下。
主要思路:首先看第三行和第四行,父類ID(PARENTID)的值是1,表示屬于id=1這個類的子類,而,一,二兩行因為是一級分類,沒有上級分類,所以父類ID(PARENTID)的值是0,表示初級分類,依次類推便實現了無限級分類。最終的效果是:
├一級分類A
├─┴二級分類A
├─┴二級分類B
├一級分類B
然后就是程序,這里以PHP作為描述語言,可以很方便的改成其他語言,因為原理相似,就是一個遞歸而已。
- <?php
- $dbhost = "localhost"; // 數據庫主機名
- $dbuser = "root"; // 數據庫用戶名
- $dbpd = "123456"; // 數據庫密碼
- $dbname = "test"; // 數據庫名
- mysql_connect($dbhost,$dbuser,$dbpd); //連接主機
- mysql_select_db($dbname); //選擇數據庫
- mysql_query("SET NAMES 'utf8'");
- display_tree("├",0);
- function display_tree($tag,$classid) {
- $result = mysql_query("
- SELECT *
- FROM ylmf_class
- WHERE parentid = '" . $classid . "'
- ;"
- );
- while ($row = mysql_fetch_array($result)) {
- // 縮進顯示節點名稱
- echo $tag.$row['classname'] . "<br/>";
- //再次調用這個函數顯示子節點的子節點
- display_tree($tag."─┴",$row['id']);
- }
- }
- ?>
新聞熱點
疑難解答