日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

为什么用 php widget,13.6 Widget扩展

發布時間:2024/9/15 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么用 php widget,13.6 Widget扩展 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

# Widget擴展

[上一頁](# "上一頁")[下一頁](# "下一頁")

Widget擴展用于在頁面根據需要輸出不同的內容,Widget擴展的定義是在項目的Lib/Widget目錄下面定義Widget類庫,例如下面定義了一個用于顯示最近的評論的Widget,位于Lib/Widget/ShowCommentWidget.class.php。

Widget類庫需要繼承Widget類,并且必須定義render方法實現,例如:`classShowCommentWidgetextendsWidget{

publicfunctionrender($data){

return?'這是最新的評論信息';

}

}`render方法必須使用return返回要輸出的字符串信息,而不是直接輸出。

Widget也可以調用Widget類的renderFile方法,渲染模板后進行輸出。`classShowCommentWidgetextendsWidget{

publicfunctionrender($data){

$content?=?$this->renderFile('comment',$data);

return?$content;

}

}`定義好Widget類庫后,只需要做的是在模板文件里面使用W方法調用Widget,例如:`{:W('ShowComment')}`通常Widget都有自己的調用參數來決定不同的輸出內容`{:W('ShowComment',array('count'=>5))}`參數必須使用索引數組傳入。

如果使用了renderFile方法調用了模板,那么在模板中就可以使用:

{$count} 來輸出w方法傳入的變量。

如果w方法傳入的數據是`array('id'=>5,'name'=>'thinkphp');`那么widget模板中就可以輸出id和name兩個變量。

可以理解成W方法傳入的參數是

array('模板變量1'=>值1,'模板變量2'=>'值2'…)

注意:模板中的變量由renderFile方法的var變量決定 ,并非取決于W方法傳入的參數,render方法本身可以對W方法傳入的參數進行處理后傳給renderFile方法,盡管大多數情況下都是直接傳入data變量到renderFile方法中去。

在控制器里面也可以調用Widget類進行輸出,在Action里面獲取動態的Widget內容,可以使用下面的方式:`$content?=?W('ShowComment',?array('count'=>5),true);`第三個參數表示是否返回字符串,如果是false就表示直接輸出。返回值可以用于其他用途。

Widget的模板文件單獨存放,放置到當前項目的Lib/Widget/ShowComment/目錄下面,取決于rendFile方法如何調用,默認情況下,是調用和widget同名的模板文件,例如當前Widget是ShowCommentWidget,其中代碼如下:`$this->renderFile();`則調用的widget模板位于 Lib/Widget/ShowComment/ShowComment.html,

如果調用`$this->renderFile('comment');`調用的widget模板則位于 Lib/Widget/ShowComment/comment.html,

如果需要調用子目錄下面的模板,則采用`$this->renderFile('article/comment');`調用的widget模板則位于 Lib/Widget/ShowComment/article/comment.html。

[上一頁](# "上一頁")[下一頁](# "下一頁")

總結

以上是生活随笔為你收集整理的为什么用 php widget,13.6 Widget扩展的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。