Files
framework/library/traits/controller/View.php
thinkphp 0521aebd1e traits\controller\View类增加engine方法用于初始化模板引擎
增加validate和auto额外扩展配置文件
2016-02-20 11:11:53 +08:00

89 lines
2.0 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* 用法:
* T('controller/View');
* class index
* {
* use \traits\controller\View;
* public function index(){
* $this->assign();
* $this->show();
* }
* }
*/
namespace traits\controller;
use think\Config;
trait View
{
// 视图类实例
protected $view = null;
/**
* 架构函数 初始化视图类 并采用内置模板引擎
* @access public
*/
public function initView()
{
// 模板引擎参数
if (is_null($this->view)) {
$this->view = \think\View::instance(Config::get()); // 只能这样写不然view会冲突
}
}
/**
* 加载模板和页面输出 可以返回输出内容
* @access public
* @param string $template 模板文件名
* @param array $vars 模板输出变量
* @param string $cache_id 模板缓存标识
* @return mixed
*/
public function fetch($template = '', $vars = [], $cache_id = '')
{
$this->initView();
return $this->view->fetch($template, $vars, $cache_id);
}
/**
* 渲染内容输出
* @access public
* @param string $content 内容
* @param array $vars 模板输出变量
* @return mixed
*/
public function show($content, $vars = [])
{
$this->initView();
return $this->view->show($content, $vars);
}
/**
* 模板变量赋值
* @access protected
* @param mixed $name 要显示的模板变量
* @param mixed $value 变量的值
* @return void
*/
public function assign($name, $value = '')
{
$this->initView();
$this->view->assign($name, $value);
}
/**
* 初始化模板引擎
* @access protected
* @param string $engine 引擎名称
* @param array $config 引擎参数
* @return void
*/
public function engine($engine, $config = [])
{
$this->initView();
$this->view->engine($engine, $config);
}
}