多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 安装模板引擎 使用PHP原生模板引擎需要修改配置文件`config/view.php`里把`'type' => 'Think'`修改为`'type' => 'php'`。如果只是临时改用PHP原生模板,可以使用: ~~~ return View::engine('php')->fetch('index'); ~~~ 绝大多数的时候,你要用到模板引擎。`Thinkphp6`只内置了PHP原生模板引擎(主要用于内置的异常页面输出),如果需要使用其他的模板引擎,需要单独安装相应的模板引擎扩展。 安装`think-template`模板引擎: ~~~ composer require topthink/think-view ~~~ > 视图相关的配置在配置目录的`view.php`配置文件中进行定义。 通常使用`think\facade\View`来操作视图。 ## 模板赋值 ~~~ use think\\facade\\View //控制器里面 View::assign('name','Tom'); View::assign('email','foo@bar.cn'); // 或者批量赋值 View::assign([ 'name' => 'Tom', 'email' => 'foo@bar.cn' ]); ~~~ ### 助手函数 使用`view`助手函数: ~~~ return view('index', [ 'name' => 'ThinkPHP', 'email' => 'thinkphp@qq.com' ]); ~~~ ## 模板路径 优先定位应用目录下的`view`目录,其次是寻找根目录下的`view`目录。如果你需要自定义`view`目录名称,可以通过设置`config/view.php`中的`view_dir_name`参数。 ~~~ 'view_dir_name' => 'template', ~~~ 下面演示按照默认的规则来调用模板文件。 ~~~ // 表示调用当前控制器下面的edit模板 return View::fetch('edit'); ~~~ ~~~ //表示调用Member控制器下面的read模板 return View::fetch('member/read'); ~~~ ~~~ //跨应用渲染模板 return View::fetch('admin@member/edit'); ~~~ ~~~ //支持从视图根目录开始读取模板 menu.html return View::fetch('/menu'); ~~~ ~~~ //相对于当前项目入口文件 return View::fetch('../template/public/menu.html'); ~~~ ~~~ //后缀名可以更改为实际的文件扩展名。 return View::fetch('../template/public/menu.tpl'); ~~~ > 要注意模板文件位置是相对于应用的入口文件,而不是模板目录。 ~~~ // 直接渲染内容,无需视图文件 return View::display($content, ['name' => 'thinkphp', 'email' => 'thinkphp@qq.com']); ~~~