如上所示,该属性包含一个扩展定义数组,每个扩展为一个包含 name 和 version 项的数组。 如果扩展要在 引导启动 阶段运行, 需要配置 bootstrap以及对应的引导启动类名或 configuration 数组。 扩展也可以定义 别名
layout
该属性指定渲染 视图 默认使用的布局名字, 默认值为 'main' 对应布局路径下的 main.php 文件, 如果 布局路径 和 视图路径 都是默认值, 默认布局文件可以使用路径别名@app/views/layouts/main.php
如果不想设置默认布局文件,可以设置该属性为 false,这种做法比较罕见。
layoutPath
该属性指定查找布局文件的路径,默认值为 视图路径 下的 layouts 子目录。 如果 视图路径 使用默认值, 默认的布局路径别名为@app/views/layouts。
该属性需要配置成一个目录或 路径 别名。
runtimePath
该属性指定临时文件如日志文件、缓存文件等保存路径, 默认值为带别名的 @app/runtime。
可以配置该属性为一个目录或者路径 别名, 注意应用运行时有对该路径的写入权限, 以及终端用户不能访问该路径因为临时文件可能包含一些敏感信息。
为了简化访问该路径,Yii预定义别名 @runtime 代表该路径。
viewPath
该路径指定视图文件的根目录,默认值为带别名的 @app/views, 可以配置它为一个目录或者路径 别名.
vendorPath
该属性指定 Composer 管理的供应商路径, 该路径包含应用使用的包括Yii框架在内的所有第三方库。 默认值为带别名的 @app/vendor 。
可以配置它为一个目录或者路径 别名, 当你修改时,务必修改对应的 Composer 配置。
为了简化访问该路径,Yii 预定义别名 @vendor 代表该路径。
enableCoreCommands
该属性仅 console applications 控制台应用支持, 用来指定是否启用 Yii 中的核心命令,默认值为 true。
应用事件
应用在处理请求过程中会触发事件,可以在配置文件配置事件处理代码, 如下所示:
[
'on beforeRequest' => function ($event) {
// ...
},
]
on eventName 语法的用法在 Configurations 一节有详细描述.
另外,在应用主体实例化后,你可以在 引导启动 阶段附加事件处理代码, 例如:
Yii::$app->on(yiibaseApplication::EVENT_BEFORE_REQUEST, function ($event) {
// ...
});
EVENT_BEFORE_REQUEST
该事件在应用处理请求before之前,实际的事件名为 beforeRequest。
在事件触发前,应用主体已经实例化并配置好了, 所以通过事件机制将你的代码嵌入到请求处理过程中非常不错。 例如在事件处理中根据某些参数动态设置 yiibaseApplication::$language 语言属性。







