ThinkPHP分组下自定义标签库实例_PHP
ThinkPHP
本文实例讲述了ThinkPHP分组下自定义标签库的实现方法。分享给大家供大家参考。具体如下:
自定义标签库应该位于ThinkPHP\\Extend\\Driver\\TagLib目录下
1 新建标签类库文件名为TagLibBlog.class.php。
2 编辑刚才新建的类库文件,新建一个类,继承TagLib父类
代码如下:
import('TagLib');
class TagLibBlog extends TagLib {
}
3 在类中声明一个protected成员变量$tags
代码如下:
class TagLibBlog extends TagLib {
protected $tags =array(
'mynav'=>array('attr'=>'limit,order','close'=>1)
/* www.bitsCN.com
这里$tags数组内,每个单元也就是每一行代表一个标签,例如{dede:article},我们这里也定义了一个mynav,
然后每一行标签的键名就是标签名,键值是一个数组,该数组包含两个单元,第一个就是attr,就是标签中得属性,以逗号分隔,
如num,typeid等等,close的值如果是0的话就是非闭合标签,1的话就是闭合,意思是要以来结尾
*/
);
}
4 定义了标签后,我们需要实现标签的功能,这里直接在类文件下声明一个函数,以_开头,以标签名 mynav结尾的函数名
代码如下:
public function _mynav($attr,$content){
$attr=$this->parseXmlAttr($attr);
import('@.Class.Tool');
$categories=M('category')->limit($attr['limit'])->order($attr['order'])->select();
$categories=Tool::formatMultiArray($categories);
$str='';
for($i=0;$i
'/[field.id]/',
'/[field.name]/'
);
$replace=array(
$categories[$i]['id'],
$categories[$i]['name']
);
$str.=preg_replace($model,$replace,$content);
}
return $str;
}
定义好标签后,需要在项目公用配置文件中加载标签库
config.php
代码如下:
//加载标签库
'APP_AUTOLOAD_PATH'=>'@.TagLib',
'TAGLIB_BUILD_IN'=>'Cx,Blog',
标签库完整源码如下:
import('TagLib');
class TagLibBlog extends TagLib {
protected $tags=array(
'mynav'=>array('attr'=>'limit,order','close'=>1)
);
public function _mynav($attr,$content){
$attr=$this->parseXmlAttr($attr);
import('@.Class.Tool');
$categories=M('category')->limit($attr['limit'])->order($attr['order'])->select();
$categories=Tool::formatMultiArray($categories);
$str='';
for($i=0;$i
'/[field.id]/',
'/[field.name]/'
);
$replace=array(
$categories[$i]['id'],
$categories[$i]['name']
);
$str.=preg_replace($model,$replace,$content);
}
return $str;
}
}
?>
模板中测试:
代码如下:
希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Netflix上的頭像是你串流媒體身分的視覺化代表。使用者可以超越預設的頭像來展現自己的個性。繼續閱讀這篇文章,了解如何在Netflix應用程式中設定自訂個人資料圖片。如何在Netflix中快速設定自訂頭像在Netflix中,沒有內建功能來設定個人資料圖片。不過,您可以透過在瀏覽器上安裝Netflix擴充功能來實現此目的。首先,在瀏覽器上安裝Netflix擴充功能的自訂個人資料圖片。你可以在Chrome商店買到它。安裝擴充功能後,在瀏覽器上開啟Netflix並登入您的帳戶。導航至右上角的個人資料,然後點擊

執行 ThinkPHP 專案需要:安裝 Composer;使用 Composer 建立專案;進入專案目錄,執行 php bin/console serve;造訪 http://localhost:8000 查看歡迎頁面。

ThinkPHP 擁有多個版本,針對不同 PHP 版本而設計。主要版本包括 3.2、5.0、5.1 和 6.0,而次要版本用於修復 bug 和提供新功能。目前最新穩定版本為 ThinkPHP 6.0.16。在選擇版本時,需考慮 PHP 版本、功能需求和社群支援。建議使用最新穩定版本以獲得最佳性能和支援。

如何在Eclipse中自訂快捷鍵設定?身為開發人員,在使用Eclipse進行編碼時,熟練快捷鍵是提高效率的關鍵之一。 Eclipse作為一個強大的整合開發環境,不僅提供了許多預設的快捷鍵,還允許使用者根據自己的偏好進行個人化的客製化。本文將介紹如何在Eclipse中自訂快捷鍵設置,並給出具體的程式碼範例。打開Eclipse首先,打開Eclipse,並進入

ThinkPHP Framework 的本機運作步驟:下載並解壓縮 ThinkPHP Framework 到本機目錄。建立虛擬主機(可選),指向 ThinkPHP 根目錄。配置資料庫連線參數。啟動 Web 伺服器。初始化 ThinkPHP 應用程式。存取 ThinkPHP 應用程式 URL 運行。

1.下圖是edius預設的螢幕佈局,預設的EDIUS視窗佈局是橫向版式,因此在單一顯示器環境中,許多視窗是重疊在一起的,且預覽視窗為單一視窗模式。 2、您可以透過【檢視】選單列啟用【雙視窗模式】,使預覽視窗同時顯示播放視窗和錄製視窗。 3.您可以透過【檢視功能表列>視窗佈局>常規】來恢復預設螢幕佈局。另外您也可以自訂適合您的佈局方式,並儲存為常用螢幕佈局:將視窗拖曳成適合自己的佈局,然後點擊【檢視>視窗佈局>儲存目前佈局>新建】,在彈出的【儲存目前佈局】小視窗中輸入佈局名稱,按確定

Laravel 和 ThinkPHP 框架的效能比較:ThinkPHP 效能通常優於 Laravel,專注於最佳化和快取。 Laravel 性能良好,但對於複雜應用程序,ThinkPHP 可能更適合。

《開發建議:如何利用ThinkPHP框架實現非同步任務》隨著網路技術的快速發展,Web應用程式對於處理大量並發請求和複雜業務邏輯的需求也越來越高。為了提高系統的效能和使用者體驗,開發人員常常會考慮利用非同步任務來執行一些耗時操作,例如發送郵件、處理文件上傳、產生報表等。在PHP領域,ThinkPHP框架作為一個流行的開發框架,提供了一些便捷的方式來實現非同步任務。
