Application
in package
Tags
Table of Contents
- $actionAnnotate : string
- action 注释
- $delegate : Delegate
- __construct() : mixed
- 实例化Application
- combineParamsAnnotateConfig() : array<string|int, mixed>
- 合并参数注释配置
- dispatcher() : array<string|int, mixed>|mixed|string
- 运行框架
- getAnnotateConfig() : array<string|int, mixed>|bool
- 获取action注释配置
- getControllerNamespace() : string
- 获取控制器的命名空间
- getViewControllerNameSpace() : string
- 默认的视图控制器命名空间
- instanceClass() : object|bool
- 实例化内部类 <pre> 判断类中是否包含静态成员变量app_delegate并赋值 主要用于实例化Cross\MVC\Module, Cross\MVC\View命名空间下的派生类 不能实例化控制器, 实例化控制器请调用本类中的get()方法 </pre>
- oneDimensionalToAssociativeArray() : array<string|int, mixed>
- 一维数组按顺序转换为关联数组
- stringParamsToAssociativeArray() : array<string|int, mixed>
- 字符类型的参数转换为一个关联数组
- updateRouterParams() : void
- 设置params
- callReliesControllerClosure() : void
- 调用依赖控制器实例的匿名函数
- initController() : ReflectionClass
- 初始化控制器
- initParams() : void
- 初始化参数
- initRequestCache() : bool|FileCacheDriver|Memcache|RedisCache|RequestCacheInterface|object
- 初始化请求缓存 <pre> request_cache_config 共接受3个参数 1 缓存开关 2 缓存配置数组 3 是否强制开启请求缓存(忽略HTTP请求类型检查)
- parseRouter() : array<string|int, mixed>
- 解析router <pre> router类型为字符串时, 第二个参数生效 当router类型为数组或字符串时,dispatcher中不再调用initParams() </pre>
- setAnnotateConfig() : void
- 设置action注释
- setResponseConfig() : void
- 设置Response
Properties
$actionAnnotate
action 注释
private
string
$actionAnnotate
$delegate
private
Delegate
$delegate
Methods
__construct()
实例化Application
public
__construct(Delegate $delegate) : mixed
Parameters
- $delegate : Delegate
Return values
mixed —combineParamsAnnotateConfig()
合并参数注释配置
public
static combineParamsAnnotateConfig([array<string|int, mixed> $params = [] ][, array<string|int, mixed> $annotateParams = [] ][, int $opMode = 1 ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
- $annotateParams : array<string|int, mixed> = []
- $opMode : int = 1
-
处理参数的方式
Return values
array<string|int, mixed> —dispatcher()
运行框架
public
dispatcher(object|string $router[, array<string|int, mixed>|string $args = [] ][, bool $returnResponseContent = false ]) : array<string|int, mixed>|mixed|string
Parameters
- $router : object|string
- $args : array<string|int, mixed>|string = []
-
指定参数
- $returnResponseContent : bool = false
-
是否输出执行结果
Tags
Return values
array<string|int, mixed>|mixed|string —getAnnotateConfig()
获取action注释配置
public
getAnnotateConfig() : array<string|int, mixed>|bool
Return values
array<string|int, mixed>|bool —getControllerNamespace()
获取控制器的命名空间
public
getControllerNamespace(string $controllerName) : string
Parameters
- $controllerName : string
Return values
string —getViewControllerNameSpace()
默认的视图控制器命名空间
public
getViewControllerNameSpace(string $controllerName) : string
Parameters
- $controllerName : string
Return values
string —instanceClass()
实例化内部类 <pre> 判断类中是否包含静态成员变量app_delegate并赋值 主要用于实例化Cross\MVC\Module, Cross\MVC\View命名空间下的派生类 不能实例化控制器, 实例化控制器请调用本类中的get()方法 </pre>
public
instanceClass(string $class[, array<string|int, mixed> $args = [] ]) : object|bool
Parameters
- $class : string
-
类名或命名空间
- $args : array<string|int, mixed> = []
Return values
object|bool —oneDimensionalToAssociativeArray()
一维数组按顺序转换为关联数组
public
static oneDimensionalToAssociativeArray(array<string|int, mixed> $oneDimensional) : array<string|int, mixed>
Parameters
- $oneDimensional : array<string|int, mixed>
Return values
array<string|int, mixed> —stringParamsToAssociativeArray()
字符类型的参数转换为一个关联数组
public
static stringParamsToAssociativeArray(string $stringParams, string $separator) : array<string|int, mixed>
Parameters
- $stringParams : string
- $separator : string
Return values
array<string|int, mixed> —updateRouterParams()
设置params
public
updateRouterParams(array<string|int, mixed>|string $params) : void
Parameters
- $params : array<string|int, mixed>|string
Return values
void —callReliesControllerClosure()
调用依赖控制器实例的匿名函数
private
callReliesControllerClosure(Closure $closure, object $controller) : void
Parameters
- $closure : Closure
- $controller : object
-
当前控制器实例
Return values
void —initController()
初始化控制器
private
initController(string $controller[, mixed $action = null ]) : ReflectionClass
Parameters
- $controller : string
-
控制器
- $action : mixed = null
-
动作
Tags
Return values
ReflectionClass —initParams()
初始化参数
private
initParams(array<string|int, mixed>|string $urlParams[, array<string|int, mixed> $annotateParams = [] ]) : void
Parameters
- $urlParams : array<string|int, mixed>|string
- $annotateParams : array<string|int, mixed> = []
Return values
void —initRequestCache()
初始化请求缓存 <pre> request_cache_config 共接受3个参数 1 缓存开关 2 缓存配置数组 3 是否强制开启请求缓存(忽略HTTP请求类型检查)
private
initRequestCache(array<string|int, mixed> $requestCacheConfig, array<string|int, mixed> $annotateParams) : bool|FileCacheDriver|Memcache|RedisCache|RequestCacheInterface|object
请求类型验证优先级大于缓存开关 注册匿名函数cpCache可以更灵活的控制请求缓存
Parameters
- $requestCacheConfig : array<string|int, mixed>
- $annotateParams : array<string|int, mixed>
Tags
Return values
bool|FileCacheDriver|Memcache|RedisCache|RequestCacheInterface|object —parseRouter()
解析router <pre> router类型为字符串时, 第二个参数生效 当router类型为数组或字符串时,dispatcher中不再调用initParams() </pre>
private
parseRouter(RouterInterface|string $router[, array<string|int, mixed> $params = [] ][, bool &$initParams = true ]) : array<string|int, mixed>
Parameters
- $router : RouterInterface|string
- $params : array<string|int, mixed> = []
- $initParams : bool = true
Return values
array<string|int, mixed> —setAnnotateConfig()
设置action注释
private
setAnnotateConfig(array<string|int, mixed> $annotate, array<string|int, mixed> $controllerAnnotate) : void
Parameters
- $annotate : array<string|int, mixed>
- $controllerAnnotate : array<string|int, mixed>
Return values
void —setResponseConfig()
设置Response
private
setResponseConfig(array<string|int, mixed> $config) : void
Parameters
- $config : array<string|int, mixed>