Thinkphp 框架擴展之Widget擴展實現(xiàn)方法分析
本文實例講述了Thinkphp 框架擴展之Widget擴展實現(xiàn)方法。分享給大家供大家參考,具體如下:
Widget擴展
Widget擴展一般用于頁面組件的擴展。
舉個例子,我們在頁面中實現(xiàn)一個分類顯示的Widget,首先我們要定義一個Widget控制器層 CateWidget,如下:
namespace Home\Widget;
use Think\Controller;
class CateWidget extends Controller {
public function menu(){
echo 'menuWidget';
}
}
然后,我們在模版中通過W方法調(diào)用這個Widget。
{:W('Cate/Menu')}
執(zhí)行后的輸出結(jié)果是:
menuWidget
傳入?yún)?shù)
如果需要在調(diào)用Widget的時候 使用參數(shù),可以這樣定義:
namespace Home\Widget;
use Think\Controller;
class CateWidget extends Controller {
public function menu($id,$name){
echo $id.':'.$name;
}
}
模版中的參數(shù)調(diào)用,使用:
{:W('Cate/Menu',array(5,'thinkphp'))}
傳入的參數(shù)是一個數(shù)組,順序?qū)?yīng)了menu方法定義的參數(shù)順序。
則會輸出
5:thinkphp
模板支持
Widget可以支持使用獨立的模板,例如:
namespace Home\Widget;
use Think\Controller;
class CateWidget extends Controller {
public function menu(){
$menu = M('Cate')->getField('id,title');
$this->assign('menu',$menu);
$this->display('Cate:menu');
}
}
CateWiget類渲染了一個模版文件 View/Cate/menu.html。 在menu.html模版文件中的用法:
<foreach name="menu" item="title">
{$key}:{$title}
</foreach>
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
相關(guān)文章
Thinkphp調(diào)用Image類生成縮略圖的方法
這篇文章主要介紹了Thinkphp調(diào)用Image類生成縮略圖的方法,實例分析了Thinkphp調(diào)用Image類生成縮略圖的使用原理與相關(guān)技巧,需要的朋友可以參考下2015-03-03
CodeIgniter分頁類pagination使用方法示例
這篇文章主要介紹了CodeIgniter分頁類pagination使用方法,結(jié)合實例形式簡單分析了CodeIgniter框架中的分頁類pagination基本的配置與使用技巧,需要的朋友可以參考下2016-03-03
Centos6.5和Centos7 php環(huán)境搭建方法
這篇文章主要介紹了Centos6.5和Centos7 php環(huán)境搭建方法的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-05-05
Yii2針對指定url的生成及圖片等的引入方法小結(jié)
這篇文章主要介紹了Yii2針對指定url的生成及圖片等的引入方法,針對常用的URL格式及圖片路徑操作結(jié)合實例進(jìn)行了對比分析,需要的朋友可以參考下2016-07-07

