ThinkPHP 3.2.3 Widget 扩展的使用
ThinkPHP3.2.3 手册中 Widget 扩展的地址是: http://www.kancloud.cn/manual/thinkphp/1862
Widget 扩展一般用于页面组件的扩展,和自定义标签具有相同的功能。
例如:在项目首页(位于 Home 应用 ./Application/Home)的某个栏目如【最热新闻】,可以通过 Widget 扩展进行数据调用.
首先在 ./Application/Home 下创建 Widget 目录,在该目录中创建 HotWidget.class.php:
./Application/Home/Widget/HotWidget.class.php
<?php
namespace Home\Widget;
use Think\Controller; class HotWidget extends Controller{ public function hotlist($id,$name) { //参数传递(示例)
//dump($id);
//dump($name);
//$this->assign('id', $id);
//$this->assign('name', $name); //热门博文
$field = array('id','title','click');
$this->blog = M('blog')->field($field)->order('click DESC')->limit(5)->select();
return $this->display("Widget:Hot");// 解析 ./Application/Home/View/Widget/hot.html
}
}
HotWidget 类渲染的模板文件 ./Application/Home/View/Widget/hot.html:
<dl>
<dt>最热新闻</dt>
<foreach name="blog" item="v">
<dd>
<a href="{:U('/'.$v['id'])}">{$v.title}</a>
<span>({$v.click})</span>
</dd>
</foreach>
</dl>
该模板嵌入首页模板中
./Application/Home/View/Index/index.html
....
<!--热门博文-->
{:W('Hot/hotlist',array('id'=>100,'name'=>'dee'))}<!--此处仅示例参数的使用-->
<!--热门博文结束-->
....
ThinkPHP 3.2.3 Widget 扩展的使用的更多相关文章
- thinkphp Widget扩展
Widget扩展一般用于页面组件的扩展.大理石平台规格 举个例子,我们在页面中实现一个分类显示的Widget,首先我们要定义一个Widget控制器层 CateWidget,如下: namespace ...
- ThinkPHP3.2.2 Widget扩展以及widget demo实例
Widget扩展一般用于页面组件的扩展. 先说明Widget被调用的方法,你只需要在你的模板文件中使用这样的语法:{:W("Demo/demo_widget_method",arr ...
- 浅析Thinkphp框架中运用phprpc扩展模式
浅析Thinkphp框架中应用phprpc扩展模式 这次的项目舍弃了原来使用Axis2做web服务端的 方案,改用phprpc实现,其一是服务端的thinkphp已集成有该模式接口,其二是phprpc ...
- mac机上搭建php56/nginx 1.8.x/thinkphp 3.2.x/gearman扩展/seaslog扩展/redis扩展环境
php的各种扩展配置起来实在不容易,记录一下备忘: 一.php56 安装 虽然php7出来了,但是没用过,不知道有没有坑,这里仍然使用php5.6版本 1.1 安装php/php-pfm brew u ...
- today-Extension widget 扩展开发
设置UI部分的展开和收起
- ThinkPHP中Widget的两种写法及调用
Widget扩展一般用于页面组件的扩展,在页面根据需要输出不同的内容,下面介绍一下ThinkPHP中Widget的两种写法及调用 写法一: ArticlWidget.class.php文件: clas ...
- 理解钩子Hook以及在Thinkphp下利用钩子使用行为扩展
什么是钩子函数 个人理解:钩子就像一个”陷阱”.”监听器”,当A发送一个消息到B时,当消息还未到达目的地B时,被钩子拦截调出一部分代码做处理,这部分代码也叫钩子函数或者回调函数 参考网上说法 譬如我们 ...
- ThinkPHP -- 基础入门
ThinkPHP文件结构说明: |——ThinkPHP.php 框架入口文件 |——Common 框架公共文件目录 |——Conf ...
- thinkphp框架的优缺点
ThinkPHP的优缺点如下: 1.高级模型:可以轻松支持序列化字段.文本字段.只读字段.延迟写入.乐观锁.数据分表等高级特性. 2.视图模型:轻松动态地创建数据库视图,多表查询相对简单. 3.关联模 ...
随机推荐
- 移动开单扫描终端-全触屏互联网安卓打印扫描 PDAPOS机——开单扫描POS-移动开单扫描POS
浩瀚云POS是一款自主研发的全触屏互联网POS,一贯以领先的技术.快捷友好的用户体验和在全国广泛覆盖的网络,为电子商务.提供安全.可靠.保密的数据校验服务.作为其研发的一款专业移动开单扫描终端. 互联 ...
- 转:ExpressBars中的停靠控件使用
http://www.cnblogs.com/jxsoft/archive/2011/08/25/2152872.html 1 新手上路 1.1 控件简介 Dock pan ...
- maven工程下 读取resource下配置文件
http://blog.csdn.net/xu511739113/article/details/52440982
- 优先队列 UVA 11997 K Smallest Sums
题目传送门 题意:训练指南P189 分析:完全参考书上的思路,k^k的表弄成有序表: 表1:A1 + B1 <= A1 + B2 <= .... A1 + Bk 表2:A2 + B1 &l ...
- js 对象(Object)
一.对象 除了字符串.数字.true.false.null和undefined之外,javascript中的值都是对象. javascript对象属性包括名字和值,属性名可以是包含空字符串在内的任意字 ...
- BZOJ3567 : AABB
考虑以块大小为$32$将序列分块,设$s[i][j]$表示前$i$块和前$j$块矩形相交的对数,$f[i][j]$表示矩形$i$和前$j$块的相交个数. 如果矩形$i$和$j$相交,那么有: $x_1 ...
- php 从myslql里导出到excel
//导出excel 只wps可以打开public function takexcelAction(){ $name = $this->input->get_post('name'); $i ...
- gson 简要使用
http://www.cnblogs.com/chenlhuaf/archive/2011/05/01/gson_test.html 发现了google的gson,因为之前对于protocolbuf有 ...
- 【BZOJ3439】Kpm的MC密码 trie树+主席树
Description 背景 想Kpm当年为了防止别人随便进入他的MC,给他的PC设了各种奇怪的密码和验证问题(不要问我他是怎么设的...),于是乎,他现在理所当然地忘记了密码,只能来解答那些神奇的身 ...
- 【BZOJ1034】[ZJOI2008]泡泡堂BNB 贪心
Description 第XXXX届NOI期间,为了加强各省选手之间的交流,组委会决定组织一场省际电子竞技大赛,每一个省的代表队由n名选手组成,比赛的项目是老少咸宜的网络游戏泡泡堂.每一场比赛前,对阵 ...