掌握Thinkphp3.2.0----视图

Posted GOFighting

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了掌握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();

二、赋值和渲染

赋值:

1 //给模版传递一个变量
2 $this->assign(\'user\', \'蜡笔小新\');
3 //模版中调用变量
4 {$user}

 

渲染:

渲染模版输出使用的是 display 方法,有三个可选参数:
display([模版文件][,字符编码][,输出类型]);

 1 //不传参数
 2 $this->display();
 3 ./Weibo/Home/View/default/User/index.tpl
 4 //修改默认模版
 5 $this->display(\'add\');
 6 ./Weibo/Home/View/default/User/add.tpl
 7 //修改默认模版,目录加模版
 8 $this->display(\'Bbb/add\');
 9 ./Weibo/Home/View/default/ Bbb /add.tpl
10 //修改默认模版,模块加目录加模版
11 $this->display(\'Admin@Bbb/add\');
12 ./Weibo/ Admin /View/default/ Bbb /add.tpl
13 //修改默认模版,主题加目录加模版
14 $this->theme(\'blue\')->display(\'Bbb/add\');
15 ./Weibo/Home/View/ blue/ / Bbb /add.tpl
16 //修改默认模版,自定义模版
17 $this->display(\'./Template/Public/add.tpl\');
18 ./ Template/ / Public/ add.tpl //Template 和 Weibo 同级
19 //修改默认模版,指定编码和文件类型,一般不用填写,默认即可
20 $this->display(\'add\', \'utf-8\', \'text/xml\');

 如果报这种错,不要被其迷惑;其实就是相当于    ./Template/Public/add.tpl.html

./WeiBo/Home/View/./Template/Public/add.tpl.html

三. 模版地址  T(),专门用于生成模版文件

T([资源://][模块@][主题/][控制器/]操作,[视图分层]);

和display()的参数有点相似,但是更高级。可以结合这个方法来实现模版目录的切换

四.获取模版内容----- fetch()方法

1 //获取模版里的内容
2 $content = $this->fetch();
3 var_dump($content);
4 //通过内容再渲染输出
5 $this->show($content);

 

这种获取模版所有代码(以字符串的形式),处理之后再渲染输出还是很强大的

以上是关于掌握Thinkphp3.2.0----视图的主要内容,如果未能解决你的问题,请参考以下文章

掌握Thinkphp3.2.0----连贯操作

掌握Thinkphp3.2.0----自动完成

掌握Thinkphp3.2.0----内置标签

掌握Thinkphp3.2.0----标签库

掌握Thinkphp3.2.0----SQL查询

48个值得掌握的JavaScript代码片段(上)