CrossPHP

View extends FrameBase
in package

Tags
author

wonli wonli@live.com Class View

Table of Contents

$appDelegate  : Delegate
$config  : Config
$request  : Request
$response  : Response
$view  : View
$action  : string
action名称
$actionAnnotate  : array<string|int, mixed>
当前方法的注释配置
$controller  : string
控制器名称
$data  : array<string|int, mixed>
模板数据
$delegate  : Delegate
$params  : array<string|int, mixed>
参数列表
$set  : array<string|int, mixed>
初始化布局文件中的变量 <pre> title 标题 keywords 关键词 description 页面描述
$tplFileSuffix  : string
模版扩展文件名
$urlConfigCache  : array<string|int, mixed>
url配置缓存
$viewController  : string
视图控制器命名空间
$linkBase  : string
默认url
$resList  : array<string|int, mixed>
资源配置
$tplBasePath  : string
默认模板路径
$tplDir  : string
默认模板目录
$wrapStack  : array<string|int, mixed>
__construct()  : mixed
FrameBase constructor.
__get()  : Response|Request|View|Config|null
request response view
a()  : mixed|string
超链接
addRes()  : void
运行时分组添加css/js
appUrl()  : string
生成指定app,指定控制器的url
block()  : string
带wrap的块级元素
buildForm()  : string
生成表单 <pre> 使用$this->on('buildForm', ....), 来干预所有生成的表单内容 </pre>
checkbox()  : string
多选
cleanLinkCache()  : void
清除link中使用到的缓存(config->url配置在运行过程中发生变动时先清除缓存)
display()  : void
渲染模板
e()  : string
安全的输出数组中的值
ee()  : string
判断数组中的值是否为empty,否则返回默认值
getAppName()  : string
获取当前app名称
getConfig()  : Config
getDelegate()  : Delegate
getFilePath()  : string
解析文件路径 <pre> 格式如下: 1 ::[path/file_name] 从当前项目根目录查找 2 app::[path/file_name] 当前app路径 3 static::[path/file_name] 静态资源目录 4 cache::[path/file_name] 缓存路径 5 config::[path/file_name] 配置路径 </pre>
getLinkBase()  : string
获取生成连接的基础路径
getTplBasePath()  : string
获取模板默认路径
getTplDir()  : string
取得模板路径前缀
getTplPath()  : string
模板路径
html()  : mixed
输出HTML <pre> 带wrap时, 先处理wrap 单独输出HTML内容时候, $encode表示是否转换HTML实体 </pre>
htmlTag()  : string
输出任意HTML标签
img()  : mixed|string
输出img标签
input()  : mixed|string
input标签
JSON()  : void
输出JSON
loadConfig()  : Config
读取配置文件
loadRes()  : string
分组加载css|js
obRenderFile()  : string
带缓存的renderFile
obRenderTpl()  : string
带缓存的renderTpl
parseGetFile()  : mixed
获取文件路径
radio()  : string
单选
relRes()  : string
输出资源相对路径
renderFile()  : void
加载指定绝对路径的文件
renderTpl()  : void
加载指定名称的模板文件
res()  : string
生成资源文件路径
responseData()  : ResponseData
返回一个ResponseData对象
section()  : string
处理带模板的block元素
select()  : mixed
输出select
set()  : $this
设置layer附加参数
setLinkBase()  : void
设置生成的连接基础路径
setTplBasePath()  : void
设置模板路径
setTplDir()  : void
设置模板dir
sUrl()  : string
生成参数加密的超链接
tpl()  : string
模板的绝对路径
url()  : string
生成url
wrap()  : $this
HTML标签入栈
XML()  : void
输出XML
getAuth()  : bool|mixed|string
解密会话
getUrlEncryptKey()  : string
获取uri加密/解密时用到的key
initView()  : mixed
初始化视图控制器
loadLayer()  : false|string
加载布局
makeControllerUri()  : string
生成控制器连接
makeIndex()  : string
生成URL中的索引部分
makeParams()  : string
生成uri参数字符串
makeUri()  : string
生成连接
outputResLink()  : null|string
输出js/css连接
setAuth()  : bool
加密会话 <pre> sys.auth 中指定cookie/session </pre>
sParams()  : array<string|int, mixed>|bool|string
还原加密后的参数
urlEncrypt()  : bool|string
uri参数加密
buildRadioOrCheckbox()  : string
生成radio或checkbox标签
buildWrapTags()  : mixed
处理wrap
obRenderAction()  : string|false
输出带layer的view
parseControllerAlias()  : array<string|int, mixed>
解析路由别名配置
wrapContent()  : mixed
处理带wrap的HTML
wrapTag()  : mixed|string
节点入栈并生成HTML

Properties

$action

action名称

protected string $action

$actionAnnotate

当前方法的注释配置

protected array<string|int, mixed> $actionAnnotate

$controller

控制器名称

protected string $controller

$data

模板数据

protected array<string|int, mixed> $data

$params

参数列表

protected array<string|int, mixed> $params

$set

初始化布局文件中的变量 <pre> title 标题 keywords 关键词 description 页面描述

protected array<string|int, mixed> $set = ['title' => '', 'keywords' => '', 'description' => '', 'layer' => 'default', 'load_layer' => true]

layer 布局模板名称 load_layer 是否加载布局模板

$tplFileSuffix

模版扩展文件名

protected string $tplFileSuffix = '.tpl.php'

$urlConfigCache

url配置缓存

protected static array<string|int, mixed> $urlConfigCache = []

$viewController

视图控制器命名空间

protected string $viewController

$linkBase

默认url

private string $linkBase = null

$resList

资源配置

private array<string|int, mixed> $resList

$tplBasePath

默认模板路径

private string $tplBasePath

$tplDir

默认模板目录

private string $tplDir

$wrapStack

private array<string|int, mixed> $wrapStack = []

Methods

__construct()

FrameBase constructor.

public __construct() : mixed
Return values
mixed

a()

超链接

public a(string $content[, string $href = '' ][, array<string|int, mixed> $elementTags = [] ]) : mixed|string
Parameters
$content : string
$href : string = ''
$elementTags : array<string|int, mixed> = []
Return values
mixed|string

addRes()

运行时分组添加css/js

public addRes(string $resUrl[, string $location = 'header' ][, bool $convert = true ]) : void
Parameters
$resUrl : string
$location : string = 'header'
$convert : bool = true
Return values
void

appUrl()

生成指定app,指定控制器的url

public appUrl(string $baseLink, string $appName[, null|string $controller = null ][, null|string|array<string|int, mixed> $params = null ][, null|bool $encryptParams = false ]) : string
Parameters
$baseLink : string
$appName : string
$controller : null|string = null
$params : null|string|array<string|int, mixed> = null
$encryptParams : null|bool = false
Tags
throws
CoreException
Return values
string

block()

带wrap的块级元素

public block(string $content[, array<string|int, mixed> $elementTags = [] ][, string $element = 'div' ]) : string
Parameters
$content : string

内容

$elementTags : array<string|int, mixed> = []
$element : string = 'div'
Return values
string

buildForm()

生成表单 <pre> 使用$this->on('buildForm', ....), 来干预所有生成的表单内容 </pre>

public buildForm(string $tplName[, array<string|int, mixed> $formTags = [] ][, array<string|int, mixed> $tplData = [] ]) : string
Parameters
$tplName : string

包含表单的模板文件路径

$formTags : array<string|int, mixed> = []

生成表单tag的参数

$tplData : array<string|int, mixed> = []

模板数据

Return values
string

checkbox()

多选

public checkbox(array<string|int, mixed> $data[, string|array<string|int, mixed> $defaultValue = '' ][, array<string|int, mixed> $checkboxTags = [] ][, array<string|int, mixed> $labelTags = [] ]) : string
Parameters
$data : array<string|int, mixed>
$defaultValue : string|array<string|int, mixed> = ''
$checkboxTags : array<string|int, mixed> = []
$labelTags : array<string|int, mixed> = []
Tags
see
View::buildRadioOrCheckbox
Return values
string

cleanLinkCache()

清除link中使用到的缓存(config->url配置在运行过程中发生变动时先清除缓存)

public cleanLinkCache() : void
Return values
void

display()

渲染模板

public display([null $data = null ][, string|null $method = null ]) : void
Parameters
$data : null = null
$method : string|null = null
Tags
throws
CoreException
Return values
void

e()

安全的输出数组中的值

public e(array<string|int, mixed> $data, string|int $key[, string $defaultValue = '' ]) : string
Parameters
$data : array<string|int, mixed>
$key : string|int
$defaultValue : string = ''
Return values
string

ee()

判断数组中的值是否为empty,否则返回默认值

public ee(array<string|int, mixed> $data, string|int $key[, string $defaultValue = '' ]) : string
Parameters
$data : array<string|int, mixed>
$key : string|int
$defaultValue : string = ''
Tags
see
e
Return values
string

getAppName()

获取当前app名称

public getAppName() : string
Return values
string

getFilePath()

解析文件路径 <pre> 格式如下: 1 ::[path/file_name] 从当前项目根目录查找 2 app::[path/file_name] 当前app路径 3 static::[path/file_name] 静态资源目录 4 cache::[path/file_name] 缓存路径 5 config::[path/file_name] 配置路径 </pre>

public getFilePath(string $name) : string
Parameters
$name : string
Return values
string

getLinkBase()

获取生成连接的基础路径

public getLinkBase() : string
Return values
string

getTplBasePath()

获取模板默认路径

public getTplBasePath() : string
Return values
string

getTplDir()

取得模板路径前缀

public getTplDir() : string
Return values
string

getTplPath()

模板路径

public getTplPath() : string
Return values
string

要加载的模板路径

html()

输出HTML <pre> 带wrap时, 先处理wrap 单独输出HTML内容时候, $encode表示是否转换HTML实体 </pre>

public html(string $content[, bool $encode = true ]) : mixed
Parameters
$content : string

内容

$encode : bool = true

是否转码

Return values
mixed

htmlTag()

输出任意HTML标签

public static htmlTag(string $element[, array<string|int, mixed> $elementTags = [] ]) : string
Parameters
$element : string
$elementTags : array<string|int, mixed> = []
Return values
string

img()

输出img标签

public img(string $src[, array<string|int, mixed> $elementTags = [] ]) : mixed|string
Parameters
$src : string
$elementTags : array<string|int, mixed> = []
Return values
mixed|string

input()

input标签

public input(string $type[, array<string|int, mixed> $elementTags = [] ]) : mixed|string
Parameters
$type : string
$elementTags : array<string|int, mixed> = []
Return values
mixed|string

JSON()

输出JSON

public JSON(array<string|int, mixed> $data) : void
Parameters
$data : array<string|int, mixed>
Return values
void

loadRes()

分组加载css|js

public loadRes([string $location = 'header' ]) : string
Parameters
$location : string = 'header'
Return values
string

obRenderFile()

带缓存的renderFile

public obRenderFile(string $file[, array<string|int, mixed> $data = [] ][, bool $encode = false ]) : string
Parameters
$file : string
$data : array<string|int, mixed> = []
$encode : bool = false
Return values
string

obRenderTpl()

带缓存的renderTpl

public obRenderTpl(string $tplName[, array<string|int, mixed> $data = [] ][, bool $encode = false ]) : string
Parameters
$tplName : string
$data : array<string|int, mixed> = []
$encode : bool = false
Return values
string

parseGetFile()

获取文件路径

public parseGetFile(string $name[, bool $getFileContent = false ]) : mixed
Parameters
$name : string
$getFileContent : bool = false
Tags
throws
CoreException
see
Loader::read()
Return values
mixed

radio()

单选

public radio(array<string|int, mixed> $data[, string $defaultValue = '' ][, array<string|int, mixed> $radioTags = [] ][, array<string|int, mixed> $labelTags = [] ]) : string
Parameters
$data : array<string|int, mixed>
$defaultValue : string = ''
$radioTags : array<string|int, mixed> = []
$labelTags : array<string|int, mixed> = []
Tags
see
View::buildRadioOrCheckbox
Return values
string

relRes()

输出资源相对路径

public relRes(string $resUrl[, string $resDir = 'static' ]) : string
Parameters
$resUrl : string

资源路径

$resDir : string = 'static'

资源文件夹名称

Return values
string

renderFile()

加载指定绝对路径的文件

public renderFile(string $file[, array<string|int, mixed> $data = [] ]) : void
Parameters
$file : string

文件绝对路径

$data : array<string|int, mixed> = []
Return values
void

renderTpl()

加载指定名称的模板文件

public renderTpl(string $tplName[, array<string|int, mixed> $data = [] ]) : void
Parameters
$tplName : string
$data : array<string|int, mixed> = []
Return values
void

res()

生成资源文件路径

public res(string $resUrl[, bool $useStaticUrl = true ]) : string
Parameters
$resUrl : string
$useStaticUrl : bool = true
Return values
string

responseData()

返回一个ResponseData对象

public responseData([int $status = 1 ][, array<string|int, mixed> $data = [] ]) : ResponseData
Parameters
$status : int = 1
$data : array<string|int, mixed> = []
Return values
ResponseData

section()

处理带模板的block元素

public section(string $tplName[, array<string|int, mixed> $tplData = [] ][, array<string|int, mixed> $elementTags = [] ][, string $element = 'div' ]) : string
Parameters
$tplName : string

模板名称

$tplData : array<string|int, mixed> = []

模板中的数据

$elementTags : array<string|int, mixed> = []
$element : string = 'div'
Return values
string

select()

输出select

public select(array<string|int, mixed> $optionsData[, mixed $defaultValue = null ][, array<string|int, mixed> $selectParams = [] ][, array<string|int, mixed> $userOptionParams = [] ]) : mixed
Parameters
$optionsData : array<string|int, mixed>

二维数组时, 生成optgroup

$defaultValue : mixed = null
$selectParams : array<string|int, mixed> = []
$userOptionParams : array<string|int, mixed> = []
Return values
mixed

set()

设置layer附加参数

public final set(mixed $name[, null $value = null ]) : $this
Parameters
$name : mixed
$value : null = null
Return values
$this

setLinkBase()

设置生成的连接基础路径

public setLinkBase(string $linkBase) : void
Parameters
$linkBase : string
Return values
void

setTplBasePath()

设置模板路径

public setTplBasePath(string $tplBasePath) : void
Parameters
$tplBasePath : string
Return values
void

setTplDir()

设置模板dir

public setTplDir(string $dirName) : void
Parameters
$dirName : string
Return values
void

sUrl()

生成参数加密的超链接

public sUrl([string|null $controller = null ][, null|string|array<string|int, mixed> $params = null ]) : string
Parameters
$controller : string|null = null
$params : null|string|array<string|int, mixed> = null
Tags
throws
CoreException
see
View::url()
Return values
string

tpl()

模板的绝对路径

public tpl(string $tplName[, bool $getContent = false ][, bool $autoAppendSuffix = true ]) : string
Parameters
$tplName : string
$getContent : bool = false

是否读取模板内容

$autoAppendSuffix : bool = true

是否自动添加模版后缀

Return values
string

url()

生成url

public url([string|null $controller = null ][, null|string|array<string|int, mixed> $params = null ][, bool $encryptParams = false ]) : string
Parameters
$controller : string|null = null
$params : null|string|array<string|int, mixed> = null
$encryptParams : bool = false
Tags
throws
CoreException
Return values
string

wrap()

HTML标签入栈

public wrap(string $element[, string|array<string|int, mixed> $elementTags = [] ][, bool $contentRear = false ]) : $this
Parameters
$element : string
$elementTags : string|array<string|int, mixed> = []
$contentRear : bool = false

自身内容是否放在被包裹内容之后

Return values
$this

XML()

输出XML

public XML(array<string|int, mixed> $data[, string $rootName = 'root' ]) : void
Parameters
$data : array<string|int, mixed>
$rootName : string = 'root'
Tags
throws
Exception
Return values
void

getAuth()

解密会话

protected getAuth(string $key[, bool $deCode = false ]) : bool|mixed|string
Parameters
$key : string
$deCode : bool = false
Tags
throws
CoreException
Return values
bool|mixed|string

getUrlEncryptKey()

获取uri加密/解密时用到的key

protected getUrlEncryptKey([string $type = 'auth' ]) : string
Parameters
$type : string = 'auth'
Return values
string

initView()

初始化视图控制器

protected initView() : mixed
Return values
mixed

loadLayer()

加载布局

protected loadLayer(string $content[, string $layerExt = '.layer.php' ]) : false|string
Parameters
$content : string
$layerExt : string = '.layer.php'
Tags
throws
CoreException
Return values
false|string

makeControllerUri()

生成控制器连接

protected makeControllerUri(string $appName, bool $useCache, string $controller, array<string|int, mixed> $urlConfig) : string
Parameters
$appName : string
$useCache : bool

是否使用缓存

$controller : string
$urlConfig : array<string|int, mixed>
Return values
string

makeIndex()

生成URL中的索引部分

protected makeIndex(array<string|int, mixed> $urlConfig[, bool $haveController = false ]) : string
Parameters
$urlConfig : array<string|int, mixed>
$haveController : bool = false
Return values
string

makeParams()

生成uri参数字符串

protected makeParams(array<string|int, mixed> $params, array<string|int, mixed> $urlConfig[, bool $encryptParams = false ][, bool $addPrefixDot = true ]) : string
Parameters
$params : array<string|int, mixed>

当url_type的值不为2时, 值必须是标量(bool型需要在外部转换为int型)

$urlConfig : array<string|int, mixed>
$encryptParams : bool = false
$addPrefixDot : bool = true

当控制器字符串为空时,参数不添加前缀

Return values
string

makeUri()

生成连接

protected makeUri(string $appName, bool $checkAppName[, null|string $controller = null ][, null|array<string|int, mixed> $params = null ][, bool $encryptParams = false ]) : string
Parameters
$appName : string
$checkAppName : bool
$controller : null|string = null
$params : null|array<string|int, mixed> = null
$encryptParams : bool = false
Tags
throws
CoreException
Return values
string

输出js/css连接

protected outputResLink(string $resLink[, bool $makeLink = true ]) : null|string
Parameters
$resLink : string
$makeLink : bool = true
Return values
null|string

setAuth()

加密会话 <pre> sys.auth 中指定cookie/session </pre>

protected setAuth(string $key, string|array<string|int, mixed> $value[, int $expire = 86400 ]) : bool
Parameters
$key : string

key

$value : string|array<string|int, mixed>

$expire : int = 86400

过期时间(默认一天过期)

Tags
throws
CoreException
Return values
bool

sParams()

还原加密后的参数

protected sParams([bool $useAnnotate = true ][, null|string $params = null ]) : array<string|int, mixed>|bool|string
Parameters
$useAnnotate : bool = true
$params : null|string = null
Return values
array<string|int, mixed>|bool|string

urlEncrypt()

uri参数加密

protected urlEncrypt(string $params[, string $type = 'encode' ]) : bool|string
Parameters
$params : string
$type : string = 'encode'
Return values
bool|string

buildRadioOrCheckbox()

生成radio或checkbox标签

private buildRadioOrCheckbox(string $type, array<string|int, mixed> $data[, array<string|int, mixed> $defaultValue = [] ][, array<string|int, mixed> $inputTags = [] ][, array<string|int, mixed> $labelTags = [] ]) : string
Parameters
$type : string

指定类型

$data : array<string|int, mixed>

数据 值和label的关联数组

$defaultValue : array<string|int, mixed> = []

默认值

$inputTags : array<string|int, mixed> = []

input附加参数

$labelTags : array<string|int, mixed> = []

label附加参数

Return values
string

buildWrapTags()

处理wrap

private buildWrapTags(array<string|int, mixed> &$wrapTags) : mixed
Parameters
$wrapTags : array<string|int, mixed>
Return values
mixed

obRenderAction()

输出带layer的view

private obRenderAction(mixed $data, string $method) : string|false
Parameters
$data : mixed
$method : string
Tags
throws
CoreException
Return values
string|false

parseControllerAlias()

解析路由别名配置

private parseControllerAlias(string $appName, array<string|int, mixed> $router) : array<string|int, mixed>
Parameters
$appName : string
$router : array<string|int, mixed>
Return values
array<string|int, mixed>

wrapContent()

处理带wrap的HTML

private wrapContent(string $content[, bool $encode = true ]) : mixed
Parameters
$content : string
$encode : bool = true

是否转码

Return values
mixed

wrapTag()

节点入栈并生成HTML

private wrapTag(string $element[, array<string|int, mixed> $elementTags = [] ]) : mixed|string
Parameters
$element : string
$elementTags : array<string|int, mixed> = []
Return values
mixed|string

Search results