PHP获取当前位置
如果想動(dòng)態(tài)的獲取當(dāng)前欄目所處的位置,就要關(guān)聯(lián)到數(shù)據(jù)庫(kù),下面是例子:
欄目表(category):
涉及到二級(jí)目錄。
(1)首先在你的首頁導(dǎo)航欄,還有首頁所出現(xiàn)的鏈接后面,為欄目加上catid,就像這樣:?。
?當(dāng)然,子頁公用的導(dǎo)航欄也是要加上的。
(2)然后在控制器里面獲取數(shù)據(jù)。
/* 當(dāng)前位置 */
$cat_id = $_GET['catid'];
$cat = M("category"); //實(shí)例化category
$data = $cat->where('cat_id='.$cat_id)->find(); //在category表中查找數(shù)據(jù)
if($data['parent_id']){ ?//判斷當(dāng)前欄目是否有父級(jí)欄目
$parent_data = $cat->where('cat_id='.$data['parent_id'])->find(); //如果有,查找父級(jí)欄目cat_id
}
if($parent_data){ //判斷父級(jí)欄目是否有cat_name
$this->assign('parent', $parent_data); //如果有,將值賦給parent變量
}else{
$this->assign('parent', ''); //如果沒有,將空值賦給parent變量
}
$this->assign('cat',$data); //將以上所獲取到的值賦給cat變量
/* END 當(dāng)前位置 */
?
? (3)新建一個(gè)公用HTML文件在Common里,命名為currentPosition.html,內(nèi)容如下:
? ? ? ?(4)在需要顯示當(dāng)前欄目的地方引用currentPosition.html即可:
<include file="Common/Common/currentPosition.html" />
最終的打印結(jié)果為:
① 沒有父級(jí)欄目:
② ? ?有父級(jí)欄目:
?
當(dāng)然這一切是建立在連接到數(shù)據(jù)庫(kù)的情況下。
?
當(dāng)前位置算是獲取了,但是要是想給當(dāng)前欄目的父級(jí)欄目添加鏈接,就要給category表添加一個(gè)新的字段:
然后修改一下控制器內(nèi)容,在里面添加幾句:
在currentPosition.htm里面調(diào)用:
這時(shí)候如果有父級(jí)欄目就會(huì)輸出父級(jí)欄目然后在后面加個(gè) “>”,如果沒有父級(jí)欄目就輸出空。
最終的打印結(jié)果為:
① 沒有父級(jí)欄目:
② ? ?有父級(jí)欄目:
?
轉(zhuǎn)載于:https://www.cnblogs.com/Man-Dream-Necessary/p/5646557.html
總結(jié)
- 上一篇: ps绘画入门教程零基础(ps绘画入门教程
- 下一篇: 从 ThinkPHP 开发规范 看 PH