龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

框架的view类

时间:2014-07-22 14:48来源: 作者: 点击:
分享到:
简单的框架view类,用于视图处理
简单的框架view类,用于视图处理
<?php
/**
*视图文件
*
**/
class View {
private $_variables = array();//参数列表
private $_useLayout = true;//使用公共魔板
private $_templateType = 'phtml';
private $_route;
private $_layout;

public function __construct($route)
{
$this->_route = $route;
$this->_layout = APP_PATH.DS.'layouts'.DS.'main.'.$this->_templateType;
}

public function __set($name,$value)
{
$this->_variables[$name] = $value;
}

public function __get($name)
{
return $this->_variables[$name];
}

public function noLayout()
{
        $this->_useLayout = false;
}

public function setTemplateType($templatType)
{
        $this->_templateType = $templatType;
}
    
public function setLayout($layout,$path='')
{
       $path == '' && $path = APP_PATH.DS.'layouts';
       $this->_layout = $path.DS.$layout.'.'.$this->_templateType;
}
public function render($template = '')
{
        if(!$template)
           $template = $this->_route->getAction();
$module = $this->_route->getModule();
$templateFile = APP_PATH.DS.($module?'modules'.DS.$module.DS:'').'views'.DS.$this->_route->getController().DS.$template.'.'.$this->_templateType;
$this->_variables && extract($this->_variables,EXTR_OVERWRITE);
if($this->_useLayout)
{
include $this->_layout;
}
else
{
include $templateFile;
}
}
}
精彩图集

赞助商链接