视图类
namespace ginkgo;
class View {
// 属性
public $config = array();
public $replace = array();
protected static $instance;
private $configThis = array(
'type' => 'php',
);
private $obj_driver;
private $data = array();
// 方法
public static instance( [ mixed $config = 'php', [ array $configTpl ]] ) : object
public config( array $config )
public driver( [ mixed $config = '', [ array $configTpl ]] ) : object
public assign( mixed $assign [, mixed $value ] )
public fetch( [ mixed $tpl [, mixed $assign [, mixed $value [, bool $is_display = false ]]]] ) : mixed
public display( string $content [, mixed $assign [, mixed $value ]] ) : mixed
public has( [ mixed $tpl ] ) : bool
public setReplace( mixed $replace [, string $value ] )
public setPath( string $pathTpl )
public setObj( $name, &$obj )
public getPath() : string
public reset()
protected __construct( [ mixed $config = '', [ array $configTpl ]] ) : object
protected __clone()
private replaceProcess( string $content ) : string
}
- | 权限 | 类型 | 描述 |
---|---|---|---|
属性 | - | - | - |
$config |
public | array | 配置 |
$replace |
public | array | 替换数据 |
$instance |
protected | object static | 本类实例 |
$obj_driver |
private | object | 视图驱动实例 |
$configThis |
private | array | 默认配置 |
$data |
private | array | 模板数据 |
方法 | - | - | - |
instance() | public | static | 实例化 |
config() | public | 配置 | |
driver() | public | 设置视图驱动 | |
assign() | public | 赋值 | |
fetch() | public | 渲染模板 | |
display() | public | 渲染字符内容 | |
has() | public | 验证模板文件是否存在 | |
setReplace() | public | 设置替换数据 | |
setPath() | public | 设置模板路径 | |
setObj() | public | 设置对象映射 | |
getPath() | public | 获取模板路径 | |
reset() | public | 重置模板数据 | |
__construct() | protected | 同 instance() | |
__clone() | protected | 克隆,无实际功能,仅供限制为单例模式使用 | |
replaceProcess() | private | 替换数据处理 |
$config
配置,$configThis
默认配置public $config;
private $configThis;
结构
名称 | 类型 | 默认 | 描述 |
---|---|---|---|
type | string | php | 视图驱动 |
instance()
实例化方法public static function instance( [ mixed $config = 'php', [ array $configTpl ]] ) : object
参数
返回
config()
配置public function config( array $config )
参数
config
配置参数返回
driver()
设置视图驱动public function driver( [ mixed $config = '', [ array $configTpl ]] ) : object
参数
返回
assign()
赋值public function assign( mixed $assign [, mixed $value ] )
参数
assign
变量,字符串或数组
为数组时表示批量赋值
value
值
当 assign
为字符串时为必须,当 assign
为数组时自动忽略
返回
fetch()
渲染模板public function fetch( [ mixed $tpl [, mixed $assign [, mixed $value [, bool $is_display = false ]]]] ) : mixed
参数
tpl
模板
支持如下几种写法:
用法 | 描述 | 规则 |
---|---|---|
不带任何参数 | 自动定位 | app/tpl/当前模块/当前控制器/当前动作 .tpl.php |
动作 | 常用写法 | app/tpl/当前模块/当前控制器/动作 .tpl.php |
控制器/动作 | 常用写法 | app/tpl/当前模块/控制器/动作 .tpl.php |
完整的模板路径 | 必须包含模板后缀 | 模板后缀必须与配置一致 |
assign
变量,字符串或数组
为数组时表示批量赋值
value
值
当 assign
为字符串时为必须,当 assign
为数组时自动忽略
is_display
是否调用视图驱动的 display()
方法
返回
display()
渲染字符内容public function display( string $content [, mixed $assign [, mixed $value ]] ) : mixed
参数
content
字符内容,即模板内容assign
变量,字符串或数组
为数组时表示批量赋值
value
值
当 assign
为字符串时为必须,当 assign
为数组时自动忽略
返回
has()
验证模板文件是否存在public function has( [ mixed $tpl ] ) : bool
参数
tpl
模板
支持如下几种写法:
用法 | 描述 | 规则 |
---|---|---|
不带任何参数 | 自动定位 | app/tpl/当前模块/当前控制器/当前动作 .tpl.php |
动作 | 常用写法 | app/tpl/当前模块/当前控制器/动作 .tpl.php |
控制器/动作 | 常用写法 | app/tpl/当前模块/控制器/动作 .tpl.php |
完整的模板路径 | 必须包含模板后缀 | 模板后缀必须与配置一致 |
返回
setReplace()
设置替换数据public function setReplace( mixed $replace [, string $value ] )
参数
replace
替换数据,字符串或数组
为字符串时表示名称,为数组时表示批量设置
value
值
当 replace
为字符串时为必须,当 replace
为数组时自动忽略。
返回
setPath()
设置模板路径public function setPath( string $pathTpl )
参数
pathTpl
模板路径返回
setObj()
设置对象映射public function setObj( $name, &$obj )
参数
name
对象名称obj
对象映射返回
getPath()
获取模板路径public function getPath() : string
参数
返回
reset()
重置模板数据public function reset()
参数
返回
replaceProcess()
替换数据处理private function replaceProcess( string $content ) : string
参数
content
内容返回