PHP使用遞歸生成文章樹(shù)
因?yàn)樽约旱囊粋€(gè)技術(shù)站,以文章為主,文章有些是一個(gè)系列的,所以想把這些文章歸類(lèi),同一類(lèi)的在一個(gè)下面。
數(shù)據(jù)庫(kù)好設(shè)計(jì),無(wú)非用id,fatherid來(lái)進(jìn)行歸類(lèi),fatherid代表父類(lèi)是那篇文章的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> <a href="'.$record['url'].'" target="_blank">' . $record['title'].'</a>'; }else{ echo '<li><span class="glyphicon glyphicon-chevron-right" aria-hidden="true"> </span> <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)文章
tp5(thinkPHP5)框架連接數(shù)據(jù)庫(kù)的方法示例
這篇文章主要介紹了tp5(thinkPHP5)框架連接數(shù)據(jù)庫(kù)的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了基于thinkPHP5框架連接數(shù)據(jù)庫(kù)的相關(guān)配置、數(shù)據(jù)讀取、模板渲染等操作技巧,需要的朋友可以參考下2018-12-12php微信公眾號(hào)開(kāi)發(fā)之翻頁(yè)查詢(xún)
這篇文章主要為大家詳細(xì)介紹了php微信公眾號(hào)開(kāi)發(fā)之翻頁(yè)查詢(xún)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10windows系統(tǒng)php環(huán)境安裝swoole具體步驟
這篇文章主要介紹了windows系統(tǒng)php環(huán)境安裝swoole具體步驟,swoole目前是比較熱門(mén)的一個(gè)擴(kuò)展插件,有需要的同學(xué)可以學(xué)習(xí)下2021-03-03PHP jQuery+Ajax結(jié)合寫(xiě)批量刪除功能
這篇文章主要介紹了PHP jQuery+Ajax結(jié)合寫(xiě)批量刪除功能的相關(guān)資料,需要的朋友可以參考下2017-05-05詳解Laravel5.6通過(guò)路由進(jìn)行API版本控制的簡(jiǎn)單方法
這篇文章主要介紹了詳解Laravel5.6通過(guò)路由進(jìn)行API版本控制的簡(jiǎn)單方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01PHP+MYSQL實(shí)現(xiàn)用戶(hù)的增刪改查
本文給大家分享的是使用PHP+MYSQL實(shí)現(xiàn)用戶(hù)的增刪改查功能的全部頁(yè)面代碼,非常的詳細(xì),也很實(shí)用,適合php的初學(xué)者,有需要的小伙伴參考下。2015-03-03Laravel5.1 框架控制器基礎(chǔ)用法實(shí)例分析
這篇文章主要介紹了Laravel5.1 框架控制器基礎(chǔ)用法,結(jié)合實(shí)例形式分析了laravel5.1框架控制器的基本原理、定義與使用方法,需要的朋友可以參考下2020-01-01