今天就跟大家聊聊有關如何在ThinkPHP中使用Widget擴展,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
thinkphp屬于一種免費的開發(fā)框架,能夠用于開發(fā)前端網(wǎng)頁,最早thinkphp是為了簡化開發(fā)而產(chǎn)生的,thinkphp同時也是遵循Apache2協(xié)議,最初是從Struts演變過來,也把國外一些好的框架模式進行利用,使用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu),兼容了很多標簽庫等模式,它能夠更方便和快捷的開發(fā)和部署應用,當然不僅僅是企業(yè)級應用,任何php應用開發(fā)都可以從thinkphp的簡單、兼容和快速的特性中受益。
ThinkPHP的Widget擴展用于根據(jù)頁面需要輸出不同內(nèi)容,它在項目目錄中的Lib/Widget下定義。
具體定義如下:
class NewsListWidget extends Widget{ public function render($data){ // code... } }
需要注意:
1.Widget是一個抽象類,其中有一個抽象方法(abstract)render,必須在子類中實現(xiàn);
2.Widget的render方法必須使用return返回,而不是直接輸出;
3.$data是傳入Widget的參數(shù)。
然后我們可以在模板中直接調(diào)用這個Widget:
{:W('NewsList', array('tmpl' => 'a'))}
這里我傳入了一個參數(shù),這是比較常見的用法,Widget用來做什么?根據(jù)頁面需要輸出不同內(nèi)容,這個不同內(nèi)容,可以是數(shù)據(jù)不同,當然也可以是模板不同。
class NewsListWidget extends Widget{ public function render($data){ // code $news; // 這里可以是數(shù)據(jù)檢索語句檢索出來一個數(shù)據(jù)集 $html = $this->renderFile($data['tmpl'], $news); return $html; } }
這時候會自動渲染模板文件/Lib/Widget/NewsList/a.html的內(nèi)容,并把$news傳送過去,可以當普通模板文件處理,然后輸出。
當然,還可以在Action控制器里面獲取Widget的內(nèi)容,進行二次加工。
$content = W('NewsList', array('tmpl' => 'a'), TRUE); // 第三個參數(shù)表示是否返回字符串,默認是FALSE,代表直接輸出。
看完上述內(nèi)容,你們對如何在ThinkPHP中使用Widget擴展有進一步的了解嗎?如果還想了解更多知識或者相關內(nèi)容,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
分享標題:如何在ThinkPHP中使用Widget擴展-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://jinyejixie.com/article48/dhdsep.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、企業(yè)建站、軟件開發(fā)、網(wǎng)頁設計公司、自適應網(wǎng)站、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容