Thinkphp 框架扩展之Widget扩展实现方法分析

 更新时间:2020年04月23日 10:44:42   作者:人生如初见_张默  
这篇文章主要介绍了Thinkphp 框架扩展之Widget扩展实现方法,结合实例形式分析了Thinkphp 框架Widget扩展概念、原理、实现方法及操作注意事项,需要的朋友可以参考下

本文实例讲述了Thinkphp 框架扩展之Widget扩展实现方法。分享给大家供大家参考,具体如下:

Widget扩展

Widget扩展一般用于页面组件的扩展。

举个例子,我们在页面中实现一个分类显示的Widget,首先我们要定义一个Widget控制器层 CateWidget,如下:

namespace Home\Widget;
use Think\Controller;
class CateWidget extends Controller {
  public function menu(){
    echo 'menuWidget';
  }
}

然后,我们在模版中通过W方法调用这个Widget。

{:W('Cate/Menu')}

执行后的输出结果是:

menuWidget

传入参数

如果需要在调用Widget的时候 使用参数,可以这样定义:

namespace Home\Widget;
use Think\Controller;
class CateWidget extends Controller {
  public function menu($id,$name){
    echo $id.':'.$name;
  }
}

模版中的参数调用,使用:

{:W('Cate/Menu',array(5,'thinkphp'))}

传入的参数是一个数组,顺序对应了menu方法定义的参数顺序。

则会输出

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>

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

相关文章

  • Thinkphp调用Image类生成缩略图的方法

    Thinkphp调用Image类生成缩略图的方法

    这篇文章主要介绍了Thinkphp调用Image类生成缩略图的方法,实例分析了Thinkphp调用Image类生成缩略图的使用原理与相关技巧,需要的朋友可以参考下
    2015-03-03
  • CodeIgniter分页类pagination使用方法示例

    CodeIgniter分页类pagination使用方法示例

    这篇文章主要介绍了CodeIgniter分页类pagination使用方法,结合实例形式简单分析了CodeIgniter框架中的分页类pagination基本的配置与使用技巧,需要的朋友可以参考下
    2016-03-03
  • Laravel框架之blade模板新手入门教程及小技巧

    Laravel框架之blade模板新手入门教程及小技巧

    Blade 是 laravel 提供的一个简单强大的模板引擎。下面这篇文章主要给大家介绍了关于Laravel框架之blade模板新手的入门教程以及一些使用的小技巧,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • php操作mysqli(示例代码)

    php操作mysqli(示例代码)

    php操作mysqli的示例代码。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-10-10
  • Centos6.5和Centos7 php环境搭建方法

    Centos6.5和Centos7 php环境搭建方法

    这篇文章主要介绍了Centos6.5和Centos7 php环境搭建方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-05-05
  • php日历制作代码分享

    php日历制作代码分享

    这篇文章主要介绍了使用php制作的日历,下面有效果图,大家参考使用吧
    2014-01-01
  • Yii2语言国际化自动配置详解

    Yii2语言国际化自动配置详解

    这篇文章主要介绍了Yii2语言国际化自动配置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Yii2针对指定url的生成及图片等的引入方法小结

    Yii2针对指定url的生成及图片等的引入方法小结

    这篇文章主要介绍了Yii2针对指定url的生成及图片等的引入方法,针对常用的URL格式及图片路径操作结合实例进行了对比分析,需要的朋友可以参考下
    2016-07-07
  • thinkphp连贯操作实例分析

    thinkphp连贯操作实例分析

    这篇文章主要介绍了thinkphp连贯操作,以实例形式较为详细的分析了连贯操作的具体用法及常用的方法含义,是非常实用的技巧,需要的朋友可以参考下
    2014-11-11
  • stripos函数知识点实例分享

    stripos函数知识点实例分享

    在本篇内容中我们给大家分享了关于stripos函数知识点实例内容,有需要的朋友们跟着学习下。
    2019-02-02

最新评论