最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP使用遞歸生成文章樹

 更新時(shí)間:2015年04月21日 09:08:22   投稿:hebedich  
寫遞歸函數(shù),可考慮緩存,定義一些靜態(tài)變量來存上一次運(yùn)行的結(jié)果,多程序運(yùn)行效率很有幫助.大概步驟如下:首先到數(shù)據(jù)庫取數(shù)據(jù),放到一個(gè)數(shù)組,然后把數(shù)據(jù)轉(zhuǎn)化為一個(gè)樹型狀的數(shù)組,最后把這個(gè)樹型狀的數(shù)組轉(zhuǎn)為html代碼。下面我們來看個(gè)實(shí)例

因?yàn)樽约旱囊粋€(gè)技術(shù)站,以文章為主,文章有些是一個(gè)系列的,所以想把這些文章歸類,同一類的在一個(gè)下面。

數(shù)據(jù)庫好設(shè)計(jì),無非用id,fatherid來進(jìn)行歸類,fatherid代表父類是那篇文章的id,id是文章的唯一id,層次不限,可以是兩層,可以是三層。fatherid為0的表示頂層文章。

php代碼,主要是遞歸

function category_tree($fatherid){
  //require_once("mysql_class/config.inc.php");
  //require_once("mysql_class/Database.class.php");
  $db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
  $db->connect();
  $sql = "SELECT id,title,url FROM ".TABLE_TASK." 
     WHERE fatherid=$fatherid and ispublic=1 order by id asc";
  $articles = $db->query($sql);
  $db->close();
  while ($record = $db->fetch_array($articles)){
    $i = 0;
    if ($i == 0){
      if($fatherid==0){
        echo '<ul class="article-list-no-style border-bottom">';
      }else{
        echo '<ul class="article-list-no-style">';
      }
      
    }
    if($fatherid==0){
      echo '<li><span class="glyphicon glyphicon-log-in" 
      aria-hidden="true" id="han'.$record['id'].'">
      </span>&nbsp;&nbsp;<a href="'.$record['url'].'" target="_blank">' 
      . $record['title'].'</a>';
    }else{
      echo '<li><span class="glyphicon glyphicon-chevron-right" aria-hidden="true">
      </span>&nbsp;<a href="'.$record['url'].'" target="_blank">' 
      . $record['title'].'</a>';
    }
    
    category_tree($record['id']);
    echo '</li>';
    $i++;
    if ($i > 0){
      echo '</ul>';
    }
  }
}

調(diào)用:

category_tree(0) //先提取最頂層文章

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

相關(guān)文章

最新評(píng)論

静安区| 仁怀市| 承德市| 南昌县| 铜山县| 沙湾县| 九台市| 麟游县| 安庆市| 韶山市| 平罗县| 财经| 宁远县| 柯坪县| 木兰县| 商河县| 东方市| 通江县| 长宁县| 韩城市| 甘孜县| 岑巩县| 平塘县| 黔江区| 樟树市| 吉安市| 四平市| 井陉县| 墨竹工卡县| 霍州市| 汉沽区| 毕节市| 景德镇市| 石城县| 葫芦岛市| 抚宁县| 资阳市| 含山县| 巴林左旗| 韩城市| 万年县|