码迷,mamicode.com
首页 > Web开发 > 详细

thinkPHP学习记录4

时间:2019-10-21 13:38:10      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:ext   admin   Fix   XML   body   span   theme   ref   his   

视图

模板定义

模板按 视图目录(默认为view)/[模板主题]/控制器名/操作名+模板后缀 存储。

模板主题

每个模板都可以有一个主题,只需要在目录结构上多一层而已,在视图渲染输出之前,我们可以通过动态设置来改变需要使用的模板主题。

1
2
// 在控制器中动态改变模板主题
$this->theme('blue')->display('add');

模板赋值

在控制器中把变量赋值给模板需要使用assign方法
$this->assihn(‘ name ‘,$value)
赋值后可以在模板中用{$name}来输出
如果要同时输出多个模板变量

1
2
3
4
$array['name'] = 'thinkphp';
$array['email'] = 'liu21st@gmail.com';
$array['phone'] = '12335678';
$this->assign($array);

在模板中的输出为:

1
<?php echo $name.'['.$email.''.$phone.']';?>

如果采用内置的模板引擎,可以使用:

1
{$name} [ {$email} {$phone} ]

输出同样的内容。

模板渲染

模板赋值必须在模板渲染之前操作

渲染模板输出最常用的是使用display方法,调用格式:

1
display('[模板文件]'[大专栏  thinkPHP学习记录4tring">,'字符编码'][,'输出类型'])

获取模板地址

为了更方便的输出模板文件,新版封装了一个T函数用于生成模板文件名。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
T('Public/menu');
// 返回 当前模块/View/Public/menu.html
T('blue/Public/menu');
// 返回 当前模块/View/blue/Public/menu.html
T('Public/menu','Tpl');
// 返回 当前模块/Tpl/Public/menu.html
T('Public/menu');
// 如果TMPL_FILE_DEPR 为 _ 返回 当前模块/Tpl/Public_menu.html
T('Public/menu');
// 如果TMPL_TEMPLATE_SUFFIX 为.tpl 返回 当前模块/Tpl/Public/menu.tpl
T('Admin@Public/menu');
// 返回 Admin/View/Public/menu.html
T('Extend://Admin@Public/menu');
// 返回 Extend/Admin/View/Public/menu.html (Extend目录取决于AUTOLOAD_NAMESPACE中的配置)

获取内容

如果需要获取渲染模板的输出内容而不是直接输出,可以使用fetch方法。

1
$content = $this->fetch('Member:edit');

如果你没有定义任何模板文件,或者把模板内容存储到数据库中的话,你就需要使用show方法来渲染输出了

1
$this->show($content, 'utf-8', 'text/xml');

模板引擎

thinkPHP学习记录4

标签:ext   admin   Fix   XML   body   span   theme   ref   his   

原文地址:https://www.cnblogs.com/dajunjun/p/11712940.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!