<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            php語言

            php實現無限級分類實現代碼

            時間:2025-04-10 11:46:05 php語言 我要投稿
            • 相關推薦

            php實現無限級分類實現代碼

              開始以為這樣的功能似乎很難,之前也做過一個百科的東西,其中也涉及到了分類的功能,不過不是無限級的分類,而是簡單的實現了固定的三級分類,當時是自己設計的,想在想起來實現方法太土了,其實三級分類也只是無限級分類的一種特殊情況而已嘛。經過一段時間考慮,已經有了一些眉目,到網上一查,原來這樣的東西鋪天蓋地,呵呵。其實無限級下拉列表功能是很簡單的,無非就是用一個遞歸算法就好啦。

              首先要設計數據庫,需要建一個表,里面存儲分類信息,至少需要3個字段,第一個是主鍵(ID),第二個是父級分類ID(parentid),第三個是分類的名稱(classname)。可能的一種效果是:

              ID PARENTID CLASSNAME

              1 0 一級分類A

              2 0 一級分類B

              3 1 二級分類A

              4 1 二級分類B

              主要思路:首先看第三行和第四行,父類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']);

              }

              }

              ?>

              這樣遞歸方法,對于大量的子欄目是個負擔,一些成熟的cms系統。都是生產數組方便調用,也能大幅的提高效率。

            【php實現無限級分類實現代碼】相關文章:

            PHP實現無限級分類的方法07-14

            php+mysql實現無限分類實例詳解07-23

            PHP滾動日志的代碼實現05-17

            PHP中如何實現crontab代碼05-30

            php的curl實現get和post的代碼07-07

            php進度條實現代碼04-05

            PHP實現大文件上傳源代碼05-03

            PHP圖片文件怎么上傳實現代碼01-25

            php代碼如何實現命令行執行05-19

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看