掌握Thinkphp3.2.0----视图
我们将要学习一下 ThinkPHP 视图,视图是 Web 的可见内容,一般是 HTML
结合 PHP 获取的数据提供给用户使用的部分,属于 MVC 中的 V
一. 模版定义
默认的模版文件定义规则:视图目录/[模版主题/]控制器名/操作名+模版后缀
可以设置相关的配置来更改这些设置:红框标出的位置为修改的位置
//修改模版的视图目录
'DEFAULT_V_LAYER' =>'Template',
//修改模版中的文件的后缀
'TMPL_TEMPLATE_SUFFIX'=>'.tpl'
//用下划线代替目录层次,不用创建目录,而是用_链接的目录文件名称
'TMPL_FILE_DEPR'=>'_',
//设置外部的模版目录
'VIEW_PATH'=>'./Public/',
默认:
修改后:
//设置默认主题目录
'DEFAULT_THEME'=>'default',
//切换主题
$this->theme('blue')->display();
二、赋值和渲染
赋值:
//给模版传递一个变量
$this->assign('user', '蜡笔小新');
//模版中调用变量
{$user}
渲染:
渲染模版输出使用的是 display 方法,有三个可选参数:
display([模版文件][,字符编码][,输出类型]);
//不传参数
$this->display();
./Weibo/Home/View/default/User/index.tpl
//修改默认模版
$this->display('add');
./Weibo/Home/View/default/User/add.tpl
//修改默认模版,目录加模版
$this->display('Bbb/add');
./Weibo/Home/View/default/ Bbb /add.tpl
//修改默认模版,模块加目录加模版
$this->display('Admin@Bbb/add');
./Weibo/ Admin /View/default/ Bbb /add.tpl
//修改默认模版,主题加目录加模版
$this->theme('blue')->display('Bbb/add');
./Weibo/Home/View/ blue/ / Bbb /add.tpl
//修改默认模版,自定义模版
$this->display('./Template/Public/add.tpl');
./ Template/ / Public/ add.tpl //Template 和 Weibo 同级
//修改默认模版,指定编码和文件类型,一般不用填写,默认即可
$this->display('add', 'utf-8', 'text/xml');
如果报这种错,不要被其迷惑;其实就是相当于 ./Template/Public/add.tpl.html
./WeiBo/Home/View/./Template/Public/add.tpl.html
三. 模版地址 T(),专门用于生成模版文件
T([资源://][模块@][主题/][控制器/]操作,[视图分层]);
和display()的参数有点相似,但是更高级。可以结合这个方法来实现模版目录的切换
四.获取模版内容----- fetch()方法
//获取模版里的内容
$content = $this->fetch();
var_dump($content);
//通过内容再渲染输出
$this->show($content);
这种获取模版所有代码(以字符串的形式),处理之后再渲染输出还是很强大的
掌握Thinkphp3.2.0----视图的更多相关文章
- Thinkphp5.0 视图view取值
Thinkphp5.0 视图view取值 <!-- 获取控制器传递的变量 --> <li>{$age}</li> <!-- 获取服务器的信息 --> & ...
- ThinkPHP5.0框架开发--第9章 TP5.0视图和模板
ThinkPHP5.0框架开发--第9章 TP5.0视图和模板 第9章 TP5.0视图和模板 ===================================================== ...
- [译]ASP.NET Core 2.0 视图引擎
问题 如何在ASP.NET Core 2.0中使用Razor引擎来创建视图? 答案 新建一个空项目,修改Startup.cs,添加MVC服务和请求中间件: public void ConfigureS ...
- [译]ASP.NET Core 2.0 视图组件
问题 如何在ASP.NET Core 2.0中使用视图组件? 答案 新建一个空项目,修改Startup类并添加MVC服务和中间件: public void ConfigureServices(ISer ...
- .net core 3.0视图动态编译
之前在使用Visual Studio 2019的时候,就发现asp.net 3.0中没有cshtml动态编译的功能了:也就是说,如果改了cshtml,刷新页面不会立即生效,而是要重新编译一次才行. 这 ...
- thinkphp5.0学习(九):TP5.0视图和模板
原文地址:http://blog.csdn.net/fight_tianer/article/details/78602711 一.视图 1.加载页面 1.继承系统控制器类 return $this- ...
- 在Asp.Net Core MVC 3.0 视图运行时编译
在正常情况下,视图在生成的时候就会变为 xxx.Views.dll,在开发的时候,这样很不方便,因为很多的时候,我们只是修改一个样式,调整一些JavaScript代码,这个时候要把项目调试暂停下来,生 ...
- 【Flask】 python学习第一章 - 2.0 视图方式和返回值
路由参数与请求方式制定 ALT+回车 pycharm 快速导包 demo3 指定访问地址 与请求方式 # 给路由传入参数 使用尖括号 ,视图函数需要接收参数 @app.route(&q ...
- 学习 yii2.0——视图之间相互包含
布局 首先创建一个布局文件simple.php,路径是在views/layout/目录下. <p>this is header</p> <?= $content ?> ...
- 4.ASP.NET MVC 5.0 视图之模型绑定
大家好,这篇文章,我将向大家介绍ASP.NET MVC的模型视图绑定,ASP.MVC的模型绑定分为两种:一种是动态绑定[Dynamic Binding];还有一种就是强类型绑定[Strongly ty ...
随机推荐
- 2015安徽省赛 G.你来擒孟获
http://xcacm.hfut.edu.cn/problem.php?id=1211 SPFA模板题目 最短路变种,从起点终点各找一次最短路相加 #include<iostream> ...
- Windows10+Ubuntu双系统安装 (转)
1.Windows10+Ubuntu双系统安装: http://www.jianshu.com/p/2eebd6ad284d 2.UEFI启动模式安装ubuntu指南 : http://col ...
- java13
1:登录注册案例(理解) 2:Set集合(理解) (1)Set集合的特点 无序,唯一 (2)HashSet集合(掌握) A:底层数据结构是哈希表(是一个元素为链表的数组) B:哈希表底层依赖两个方法: ...
- css content 如何自定义生成图标?
作者:仅愚链接:https://www.zhihu.com/question/22022905/answer/20585820来源:知乎著作权归作者所有,转载请联系作者获得授权. :before(或: ...
- vux 表单提交数据 返回后页面跳转
ps:仅作参考
- c/c++字符串定义及使用的对比
c/c++中使用字符串的频率还是比较高的,下面就字符串的不同定义及其使用方法做一些对比 字符串一般有以下三种定义方法: 1.char *p="hello"; 2.char str[ ...
- c/c++与函数有关的优化
一.函数调用的优化 调用函数需要对内存进行多次访问,因此对函数的调用通常很费时,容易造成程序效率低下: 在函数调用过程中,如果每一次函数的调用结果都相同且需要多次调用时,可以将几次调用的结果进行多次累 ...
- 常用语句if,for,while
一.变量赋值 a = 3 b = a a = 5 print a,b 5,3 变量命名规则: 1.显式 2.nums_of_alex_gf = 19 3.NumsOfAlexGf = 2 4. ...
- UTC与GMT时间
整个地球分为二十四时区,每个时区都有自己的本地时间.在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated).UTC与格 ...
- R平方
参考其他网页 通常R2越大越好,但看到亦在后面标上P值,这两者之间有何联系? R2和p值没有必然联系.就像你做线性分析和(单因素或多因素)方差分析一样,若A和K线性相关,也有可能A对K么有显著性影响一 ...