Class yii\web\Application

继承yii\web\Application » yii\base\Application » yii\base\Module » yii\di\ServiceLocator » yii\base\Component » yii\base\BaseObject
实现yii\base\Configurable
可用自版本2.0
源代码 https://github.com/yiisoft/yii2/blob/master/framework/web/Application.php

Application 是所有 Web 应用程序类的基类.

有关 Application 的更多详细信息和使用信息, 请参阅 权威指南 - 应用结构 - 应用(Applications).

公共属性

隐藏继承的属性

属性类型描述定义在
$aliases array 要定义的路径别名列表. 数组键是别名(必须以@开头), 数组值是相应的路径或别名. 有关示例, 请参阅 setAliases(). 该属性是只写的. yii\base\Module
$assetManager yii\web\AssetManager 应用程序的资源管理器(assetManager)组件. 该属性是只读的. yii\base\Application
$authManager yii\rbac\ManagerInterface 应用程序的身份验证管理器(权限管理, authManager)组件. 如果未配置身份验证管理器, 则返回Null值. 该属性是只读的. yii\base\Application
$basePath string 应用程序的根目录. yii\base\Application
$behaviors yii\base\Behavior[] 附加到此组件的行为列表. 该属性是只读的. yii\base\Component
$bootstrap array 在应用程序 引导进程 中应该运行的组件列表. yii\base\Application
$cache yii\caching\CacheInterface 应用程序的缓存(cache)组件. 如果组件未启用, 则为Null. 该属性是只读的. yii\base\Application
$catchAll array 该配置指定应处理所有用户请求的控制器动作. yii\web\Application
$charset string 当前应用程序使用的字符集. yii\base\Application
$components array 组件定义列表或已加载的组件实例(ID => 定义或实例). yii\di\ServiceLocator
$container array 以 name-value 对的形式给出的值. 该属性是只写的. yii\base\Application
$controller yii\web\Controller 当前活动的控制器实例. yii\web\Application
$controllerMap array 从控制器ID映射到控制器配置. yii\base\Module
$controllerNamespace string 控制器类所在的命名空间. yii\base\Application
$controllerPath string 包含控制器类的目录. 该属性是只读的. yii\base\Module
$db yii\db\Connection 数据库连接配置. 该属性是只读的. yii\base\Application
$defaultRoute string 该应用程序的默认路由. yii\web\Application
$errorHandler yii\web\ErrorHandler 应用程序的错误处理(errorHandler)组件. 该属性是只读的. yii\web\Application
$extensions array 已安装的 Yii 扩展列表. yii\base\Application
$formatter yii\i18n\Formatter 应用程序的格式化(formatter)组件. 该属性是只读的. yii\base\Application
$homeUrl string 首页 URL. yii\web\Application
$i18n yii\i18n\I18N 应用程序的国际化(i18n)组件. 该属性是只读的. yii\base\Application
$id string 在具有相同 父类 的其它模块中唯一标识该模块的ID. yii\base\Module
$language string 用于最终用户的语言. yii\base\Application
$layout string|boolean 在此应用程序中应该应用于视图的布局. yii\base\Application
$layoutPath string 布局文件的根目录. 默认为[[viewPath]]/layouts. yii\base\Module
$loadedModules array 通过其类名称索引的已加载模块列表. yii\base\Application
$log yii\log\Dispatcher 应用程序的日志(log)组件. 该属性是只读的. yii\base\Application
$mailer yii\mail\MailerInterface 应用程序的邮件(mailer)组件. 该属性是只读的. yii\base\Application
$module yii\base\Module 该模块的父模块. yii\base\Module
$modules array 模块(由其 ID 索引). yii\base\Module
$name string 应用程序的名称. yii\base\Application
$params array 自定义模块参数(name => value). yii\base\Module
$request yii\web\Request 请求(request)组件. 该属性是只读的. yii\web\Application
$requestedAction yii\base\Action 请求的动作. yii\base\Application
$requestedParams array 提供给请求动作的参数. yii\base\Application
$requestedRoute string 请求的路由. yii\base\Application
$response yii\web\Response 响应(response)组件. 该属性是只读的. yii\web\Application
$runtimePath string 存储临时文件(eg: 日志文件, 缓存文件等)的目录. 默认为 $basePath 下的runtime子目录. yii\base\Application
$security yii\base\Security 应用程序的安全(security)组件. 该属性是只读的. yii\base\Application
$session yii\web\Session 会话(session)组件. 该属性是只读的. yii\web\Application
$sourceLanguage string 应用程序所使用的语言. yii\base\Application
$state integer 请求处理生命周期中的当前应用程序状态. yii\base\Application
$timeZone string 该应用程序使用的时区. yii\base\Application
$uniqueId string 模块的唯一 ID. 该属性是只读的. yii\base\Application
$urlManager yii\web\UrlManager 此应用程序的 URL 管理器. 该属性是只读的. yii\base\Application
$user yii\web\User 用户(user)组件. 该属性是只读的. yii\web\Application
$vendorPath string 存储供应商文件的目录. 默认为 $basePath 下的vendor目录. yii\base\Application
$version string 该模块的版本. 请注意, 该属性的类型在 getter 和 setter 中有所不同. 有关详细信息, 请参阅 getVersion()setVersion(). yii\base\Module
$view yii\base\View|yii\web\View 应用程序用于渲染各种视图文件的视图(view)组件. 该属性是只读的. yii\base\Application
$viewPath string 视图文件的根目录. 默认为[[basePath]]/views. yii\base\Module

公共方法

隐藏继承的方法

方法描述定义在
__call() 调用不是类方法的已命名方法. yii\base\BaseObject
__clone() 在通过克隆现有对象创建对象之后调用此方法. yii\base\Component
__construct() 构造函数. yii\base\Application
__get() 返回对象属性的值. yii\base\BaseObject
__isset() 检查属性是否已设置, 即已定义且不为null. yii\base\BaseObject
__set() 设置对象属性的值. yii\base\BaseObject
__unset() 将对象属性设置为null. yii\base\BaseObject
afterAction() 在执行此模块中的动作之后立即调用此方法. yii\base\Module
attachBehavior() 将行为附加到此组件. yii\base\Component
attachBehaviors() 将行为列表附加到组件. yii\base\Component
beforeAction() 在执行此模块中的动作之前调用此方法. yii\base\Module
behaviors() 返回此组件应该具有的行为列表. yii\base\Component
canGetProperty() 返回一个值, 指示属性是否可读. yii\base\BaseObject
canSetProperty() 返回一个值, 指示属性是否可写. yii\base\BaseObject
className() 返回此类的完全限定名称. yii\base\BaseObject
clear() 从定位器中移除组件. yii\di\ServiceLocator
coreComponents() 返回核心应用程序组件的配置. yii\web\Application
createController() 根据给定的路由创建一个控制器实例. yii\base\Module
createControllerByID() 根据给定的控制器ID创建一个控制器. yii\base\Module
detachBehavior() 从组件中分离一个行为. yii\base\Component
detachBehaviors() 分离组件中的所有行为. yii\base\Component
end() 终止应用程序. yii\base\Application
ensureBehaviors() 确保在 behaviors() 中声明的行为已附加到此组件. yii\base\Component
get() 返回具有指定ID的组件实例. yii\base\Module
getAssetManager() 返回资源管理器(assetManager)组件. yii\base\Application
getAuthManager() 返回此应用程序的身份验证管理器(权限管理, authManager)组件. yii\base\Application
getBasePath() 返回模块的根目录. yii\base\Module
getBehavior() 返回指定的行为对象. yii\base\Component
getBehaviors() 返回附加到此组件的所有行为. yii\base\Component
getCache() 返回缓存(cache)组件. yii\base\Application
getComponents() 返回组件定义列表或已加载组件的实例. yii\di\ServiceLocator
getControllerPath() 根据 $controllerNamespace 返回包含控制器类的目录. yii\base\Module
getDb() 返回数据库连接组件. yii\base\Application
getErrorHandler() 返回错误处理程序组件. yii\web\Application
getFormatter() 返回格式化(formatter)组件. yii\base\Application
getHomeUrl() 返回首页 URL. yii\web\Application
getI18n() 返回国际化(i18n)组件. yii\base\Application
getInstance() 返回此模块类当前请求的实例. yii\base\Module
getLayoutPath() 返回包含此模块的布局视图文件的目录. yii\base\Module
getLog() 返回日志(log)组件. yii\base\Application
getMailer() 返回邮件(mailer)组件. yii\base\Application
getModule() 检索指定标识的子模块. yii\base\Module
getModules() 返回此模块中的子模块 yii\base\Module
getRequest() 返回请求(request)组件. yii\web\Application
getResponse() 返回响应(response)组件. yii\web\Application
getRuntimePath() 返回存储临时文件(eg: 日志文件, 缓存文件等)的目录. yii\base\Application
getSecurity() 返回安全(security)组件. yii\base\Application
getSession() 返回会话(session)组件. yii\web\Application
getTimeZone() 返回此应用程序使用的时区. yii\base\Application
getUniqueId() 返回当前应用程序所有模块中唯一标识此模块的ID. yii\base\Application
getUrlManager() 返回此应用程序的 URL 管理器. yii\base\Application
getUser() 返回用户(user)组件. yii\web\Application
getVendorPath() 返回存储供应商文件的目录. yii\base\Application
getVersion() 返回当前模块的版本. yii\base\Module
getView() 返回视图对象. yii\base\Application
getViewPath() 返回包含此模块的视图文件的目录. yii\base\Module
handleRequest() 处理指定的请求. yii\web\Application
has() 返回一个值, 指示定位器是否具有指定的组件定义或是否已实例化该组件. yii\base\Module
hasEventHandlers() 返回一个值, 指示是否有任何处理程序附加到指定的事件. yii\base\Component
hasMethod() 返回一个值, 指示方法是否已定义. yii\base\BaseObject
hasModule() 检查是否存在指定ID的子模块. yii\base\Module
hasProperty() 返回一个值, 指示属性是否已定义. yii\base\BaseObject
init() 初始化模块. yii\base\Application
off() 从该组件分离现有的事件处理程序. yii\base\Component
on() 将事件处理程序附加到事件. yii\base\Component
preInit() 预初始化应用程序. yii\base\Application
run() 运行应用程序. yii\base\Application
runAction() 运行路由指定的控制器动作. yii\base\Module
set() 使用此定位器注册组件定义. yii\di\ServiceLocator
setAliases() 定义路径别名. yii\base\Module
setBasePath() 设置应用程序的根目录和@app别名. yii\base\Application
setComponents() 在此定位器中注册一组组件定义. yii\di\ServiceLocator
setContainer() 使用 $config 配置 Yii::$container. yii\base\Application
setHomeUrl() 设置首页 URL. yii\web\Application
setInstance() 设置此模块类的当前请求的实例. yii\base\Module
setLayoutPath() 设置包含布局文件的目录. yii\base\Module
setModule() 为此模块添加一个子模块. yii\base\Module
setModules() 在当前模块中注册子模块. yii\base\Module
setRuntimePath() 设置存储临时文件(eg: 日志文件, 缓存文件等)的目录. yii\base\Application
setTimeZone() 设置此应用程序使用的时区. yii\base\Application
setVendorPath() 设置存储供应商文件的目录. yii\base\Application
setVersion() 设置当前模块的版本. yii\base\Module
setViewPath() 设置包含视图文件的目录. yii\base\Module
trigger() 触发事件. yii\base\Component

受保护的方法

隐藏继承的方法

方法描述定义在
bootstrap() 初始化扩展并执行引导组件. yii\web\Application
defaultVersion() 返回模块的默认版本. yii\base\Module
registerErrorHandler() errorHandler组件注册为 PHP 错误处理程序. yii\base\Application

事件

隐藏继承的事件

事件类型描述定义在
EVENT_AFTER_ACTION yii\base\ActionEvent 在执行控制器操作之后发生的事件. yii\base\Module
EVENT_AFTER_REQUEST yii\base\Event 在应用程序成功处理请求(发送响应之前)之后引发的事件. yii\base\Application
EVENT_BEFORE_ACTION yii\base\ActionEvent 在执行控制器操作之前发生的事件. yii\base\Module
EVENT_BEFORE_REQUEST yii\base\Event 在应用程序开始处理请求之前引发的事件. yii\base\Application

常量

隐藏继承的常量

常量描述定义在
STATE_AFTER_REQUEST 4 $state 使用的应用程序状态: 应用程序正在触发 EVENT_AFTER_REQUEST. . yii\base\Application
STATE_BEFORE_REQUEST 2 $state 使用的应用程序状态: 应用程序正在触发 EVENT_BEFORE_REQUEST. yii\base\Application
STATE_BEGIN 0 $state 使用的应用程序状态: 应用程序刚刚启动. yii\base\Application
STATE_END 6 $state 使用的应用程序状态: 应用程序已结束. yii\base\Application
STATE_HANDLING_REQUEST 3 $state 使用的应用程序状态: 应用程序正在处理请求. yii\base\Application
STATE_INIT 1 $state 使用的应用程序状态: 应用程序正在初始化. yii\base\Application
STATE_SENDING_RESPONSE 5 $state 使用的应用程序状态: 应用程序即将发送响应. yii\base\Application

属性详情

$catchAll public 属性

该配置指定应处理所有用户请求的控制器动作. 这主要在应用程序处于维护模式并且需要通过单个动作处理所有传入的请求时使用. 该配置是一个数组, 其第一个元素指定动作的路由. 其余的数组元素(key-value 对)指定要绑定到动作的参数. 例如:

[
    'offline/notice',
    'param1' => 'value1',
    'param2' => 'value2',
]

默认为null, 表示全部不被使用.

public array $catchAll null
$controller public 属性

当前活动的控制器实例.

$defaultRoute public 属性

该应用程序的默认路由. 默认为site.

public string $defaultRoute 'site'
$errorHandler public 属性

应用程序的错误处理(errorHandler)组件. 该属性是只读的.

$homeUrl public 属性

首页 URL.

public string $homeUrl null
$request public 属性

请求(request)组件. 该属性是只读的.

public yii\web\Request $request null
$response public 属性

响应(response)组件. 该属性是只读的.

$session public 属性

会话(session)组件. 该属性是只读的.

public yii\web\Session $session null
$user public 属性

用户(user)组件. 该属性是只读的.

public yii\web\User $user null

方法详情

bootstrap() protected 方法

初始化扩展并执行引导组件.

完全配置应用程序后, 此方法由 init() 调用. 如果重写此方法, 请确保调用了父级实现.

protected void bootstrap ( )
coreComponents() public 方法

返回核心应用程序组件的配置.

public void coreComponents ( )
getErrorHandler() public 方法

返回错误处理程序组件.

public yii\web\ErrorHandler getErrorHandler ( )
return yii\web\ErrorHandler

应用程序的错误处理(errorHandler)组件.

getHomeUrl() public 方法

返回首页 URL.

public string getHomeUrl ( )
return string

首页 URL.

getRequest() public 方法

返回请求(request)组件.

public yii\web\Request getRequest ( )
return yii\web\Request

请求(request)组件.

getResponse() public 方法

返回响应(response)组件.

public yii\web\Response getResponse ( )
return yii\web\Response

响应(response)组件.

getSession() public 方法

返回会话(session)组件.

public yii\web\Session getSession ( )
return yii\web\Session

会话(session)组件.

getUser() public 方法

返回用户(user)组件.

public yii\web\User getUser ( )
return yii\web\User

用户(user)组件.

handleRequest() public 方法

处理指定的请求.

public yii\web\Response handleRequest ( $request )
$request yii\web\Request

要处理的请求.

return yii\web\Response

响应结果.

throws yii\web\NotFoundHttpException

如果请求的路由无效.

setHomeUrl() public 方法

设置首页 URL.

public void setHomeUrl ( $value )
$value string

首页 URL.