ThinkPHP的Widget擴充套件例項

2022-09-29 04:42:10 字數 713 閱讀 3192

thinkphp的wid擴充套件用於根據頁面需要輸出不同內容,它在專案目錄中的lib/widget下定義。

具體定義如下:

class newslistwidget extends widge程式設計客棧t

}需要注意:

1.widget是乙個抽象類,其中有乙個抽象方法(abstract)render,必須在子類中實現;

2.widget的render方法必須使用return返回,而不是直接輸出;

3.$data是傳入widget的引數。

然後我們可以在模板中直接usmtwk呼叫這個widget:

這裡我傳入了乙個www.cppcns.com引數,這是比較常見的用法,widget用來做什麼?根據頁面需要輸出不同內容,這個不同內容,可以是資料不同,當然也可以是模板不同。

class newslistwidget extends widget

}這時候會自動渲染模板檔案/lib/widget/newslist/a.html的內容,並把$news傳送過去,可以當普通模板程式設計客棧檔案處理,然後輸出。

當然,還可以在action控制器裡面獲取widget的內容,進行二次加工。

$content = w('newslist', array('tmpl' => 'a'), true); // 第三個引數表示是否返回字串,預設是false,代表直接輸出。

本文標題: thinkphp的widget擴充套件例項

本文位址:

ThinkPHP3 2中Widget例項的使用

widget類的實現可以作為分層控制器的另外乙個典型例項。舉個例子,我們在頁面中實現乙個分類選單的widget,首先我們要定義乙個widget控制器層 menuwidget,如下 namespace home widget class menuwidget extends think control...

Widget簡單的例子

模擬器效果圖 img color red onrecevie color 接收廣播事件 首先在res下面新建乙個資料夾 xml 在資料夾下新建 color olive example widget info.xml color 在layout資料夾下面新建乙個 color olive example...

各widget控制項

stretchscrollview 乙個可以下拉滾動條的檢視區域 fixgridview九宮格 anim 動畫型別 recyclerview 是android l版本中新新增的乙個用來取代listview的sdk,它的靈活性與可替代性比listview更好。接下來通過一系列的文章講解如何使用recy...