TP6 模(mu)板基本使用
前言一:
TP5.1 文档仅做参考,因为 TP6 里,不再支持 $this 的写法
$this->assign('name', 'thinkphp');
return $this->fetch();
建议改为静态调用 use think\facade\View; 的用法
<?php
namespace app\admin\controller;
use app\BaseController;
use think\facade\View;
class Index extends BaseController
{
public function index()
{
View::assign([
'name' => 'ThinkPHP',
]);
return View::fetch();
}
}
前言二:
TP6 最新版 view 架构,已经由应用目录下创建 view 目录,提升到根目录下的 view
新旧对比图(左「新」| 右「旧」)
正文
参考资料:TP5.1 模板 官方文档
因为 TP6 还在开发中,再加上 TP6 支持自定义模板规则,所以暂时到写文为止,还没有模板的详细介绍
模板变量赋值及输出演示
Controller 下 Index.php 的 index() 方法代码 ↓
<?php
namespace app\admin\controller;
use app\BaseController;
use think\facade\View;
class Index extends BaseController
{
public function index()
{
View::assign([
//简单赋值
'name' => 'ThinkPHP',
//数组赋值
'data' => ['name' => 'Cry','name2' => 'Snail'],
//二维数组
'list' => [
['name' => 'Cry'],
['name' => 'Snail']
]
]);
return View::fetch();
}
}
对应的 HTML 模板代码 ↓
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
简单赋值调用
<!--litera 是用来原样输出的-->
{literal}
模板输出 {$name}
{/literal}
<br>
{$name}
<hr>
数组赋值调用
{literal}
模板输出 {$data.name}/{$data.name2}
{/literal}
<br>
{$data.name}/{$data.name2}
<hr>
二维数组循环 两种方式 foreach | volist <br>
foreach 模板使用 <br>
{literal}
{foreach $list as $key=>$vo }<br>
{$vo.name}<br>
{/foreach}<br>
{/literal}
<br>
foreach 的 key 从 0 起始 <br>
{foreach $list as $key=>$vo }
{$key} >> {$vo.name}<br>
{/foreach}
<hr>
volist 模板使用 <br>
{literal}
{volist name='list' id='vo' k='i' }<br>
{$vo.name}<br>
{/volist}<br>
{/literal}
<br>
volist 的 key 从 1 起始 <br>
{volist name='list' id='vo' k='i' }
{$i} >> {$vo.name}<br>
{/volist}
<hr>
使用函数 {literal} {:函数名} {/literal}<br>
使用 MD5() 函数加密 $data.name <br>
如 {literal} {:MD5($data.name)} / {$data.name | md5} {/literal} <br>
加密后 {:MD5($data.name)} / {$data.name | md5}
<hr>
默认值 default <br>
{literal} {$data.names|default="没有字符串的时候出现我"} {/literal} <br>
{$data.names|default="没有字符串的时候出现我"}
</body>
</html>
输出图 ↓
内置标签
参考资料 :TP5.1 内置标签 官方文档
自由扩展😂😂😂