mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-03 13:58:55 +08:00
Update structure-applications.md
修改为中文翻译
This commit is contained in:
@ -99,7 +99,7 @@ $config = require(__DIR__ . '/../config/web.php');
|
|||||||
|
|
||||||
#### [[yii\base\Application::bootstrap|bootstrap]] <span id="bootstrap"></span>
|
#### [[yii\base\Application::bootstrap|bootstrap]] <span id="bootstrap"></span>
|
||||||
|
|
||||||
这个属性很实用,它允许你用数组指定启动阶段[[yii\base\Application::bootstrap()|bootstrapping process]]需要运行的组件。
|
这个属性很实用,它允许你用数组指定启动阶段 [[yii\base\Application::bootstrap()|bootstrapping process]] 需要运行的组件。
|
||||||
比如,如果你希望一个 [模块](structure-modules.md)
|
比如,如果你希望一个 [模块](structure-modules.md)
|
||||||
自定义 [URL 规则](runtime-url-handling.md),
|
自定义 [URL 规则](runtime-url-handling.md),
|
||||||
你可以将模块ID加入到bootstrap数组中。
|
你可以将模块ID加入到bootstrap数组中。
|
||||||
@ -129,7 +129,7 @@ $config = require(__DIR__ . '/../config/web.php');
|
|||||||
'level' => 3,
|
'level' => 3,
|
||||||
],
|
],
|
||||||
|
|
||||||
// 无名称函数
|
// 匿名函数
|
||||||
function () {
|
function () {
|
||||||
return new app\components\Profiler();
|
return new app\components\Profiler();
|
||||||
}
|
}
|
||||||
@ -137,9 +137,9 @@ $config = require(__DIR__ . '/../config/web.php');
|
|||||||
]
|
]
|
||||||
```
|
```
|
||||||
|
|
||||||
> Info: 如果模块ID和应用组件ID同名,优先使用应用组件ID,
|
> Info: 如果模块 ID 和应用组件 ID 同名,优先使用应用组件 ID,
|
||||||
> 如果你想用模块ID,
|
> 如果你想用模块 ID,
|
||||||
> 可以使用如下无名称函数返回模块ID。
|
> 可以使用如下无名称函数返回模块 ID。
|
||||||
>
|
>
|
||||||
> ```php
|
> ```php
|
||||||
[
|
[
|
||||||
@ -192,11 +192,11 @@ if (YII_ENV_DEV) {
|
|||||||
]
|
]
|
||||||
```
|
```
|
||||||
|
|
||||||
> Info: Debug panel on development environment will not work when this property is enabled.
|
> Info: 当开启这个属性时,开发环境下的调试面板将不能工作。
|
||||||
|
|
||||||
#### [[yii\base\Application::components|components]] <span id="components"></span>
|
#### [[yii\base\Application::components|components]] <span id="components"></span>
|
||||||
|
|
||||||
这是最重要的属性,它允许你注册多个在其他地方使用的[应用组件](#structure-application-components.md).
|
这是最重要的属性,它允许你注册多个在其他地方使用的 [应用组件](#structure-application-components.md).
|
||||||
例如
|
例如
|
||||||
|
|
||||||
```php
|
```php
|
||||||
@ -225,7 +225,7 @@ value代表组件类名或 [配置](concept-configurations.md)。
|
|||||||
#### [[yii\base\Application::controllerMap|controllerMap]] <span id="controllerMap"></span>
|
#### [[yii\base\Application::controllerMap|controllerMap]] <span id="controllerMap"></span>
|
||||||
|
|
||||||
该属性允许你指定一个控制器ID到任意控制器类。
|
该属性允许你指定一个控制器ID到任意控制器类。
|
||||||
Yii遵循一个默认的 [规则](#controllerNamespace)指定控制器ID到任意控制器类(如`post`对应`app\controllers\PostController`)。
|
Yii遵循一个默认的 [规则](#controllerNamespace) 指定控制器ID到任意控制器类(如`post`对应`app\controllers\PostController`)。
|
||||||
通过配置这个属性,可以打破这个默认规则,在下面的例子中,
|
通过配置这个属性,可以打破这个默认规则,在下面的例子中,
|
||||||
`account`对应到`app\controllers\UserController`,
|
`account`对应到`app\controllers\UserController`,
|
||||||
`article` 对应到 `app\controllers\PostController`。
|
`article` 对应到 `app\controllers\PostController`。
|
||||||
@ -480,13 +480,13 @@ $width = \Yii::$app->params['thumbnail.size'][0];
|
|||||||
可以配置它为一个目录或者路径 [别名](concept-aliases.md),
|
可以配置它为一个目录或者路径 [别名](concept-aliases.md),
|
||||||
当你修改时,务必修改对应的 Composer 配置。
|
当你修改时,务必修改对应的 Composer 配置。
|
||||||
|
|
||||||
为了简化访问该路径,Yii预定义别名 `@vendor` 代表该路径。
|
为了简化访问该路径,Yii 预定义别名 `@vendor` 代表该路径。
|
||||||
|
|
||||||
|
|
||||||
#### [[yii\console\Application::enableCoreCommands|enableCoreCommands]] <span id="enableCoreCommands"></span>
|
#### [[yii\console\Application::enableCoreCommands|enableCoreCommands]] <span id="enableCoreCommands"></span>
|
||||||
|
|
||||||
该属性仅 [[yii\console\Application|console applications]] 控制台应用支持,
|
该属性仅 [[yii\console\Application|console applications]] 控制台应用支持,
|
||||||
用来指定是否启用Yii中的核心命令,默认值为 `true`。
|
用来指定是否启用 Yii 中的核心命令,默认值为 `true`。
|
||||||
|
|
||||||
|
|
||||||
## 应用事件 <span id="application-events"></span>
|
## 应用事件 <span id="application-events"></span>
|
||||||
@ -505,7 +505,7 @@ $width = \Yii::$app->params['thumbnail.size'][0];
|
|||||||
`on eventName` 语法的用法在 [Configurations](concept-configurations.md#configuration-format)
|
`on eventName` 语法的用法在 [Configurations](concept-configurations.md#configuration-format)
|
||||||
一节有详细描述.
|
一节有详细描述.
|
||||||
|
|
||||||
另外,在应用主体实例化后,你可以在[引导启动](runtime-bootstrapping.md) 阶段附加事件处理代码,
|
另外,在应用主体实例化后,你可以在 [引导启动](runtime-bootstrapping.md) 阶段附加事件处理代码,
|
||||||
例如:
|
例如:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
@ -520,19 +520,19 @@ $width = \Yii::$app->params['thumbnail.size'][0];
|
|||||||
|
|
||||||
在事件触发前,应用主体已经实例化并配置好了,
|
在事件触发前,应用主体已经实例化并配置好了,
|
||||||
所以通过事件机制将你的代码嵌入到请求处理过程中非常不错。
|
所以通过事件机制将你的代码嵌入到请求处理过程中非常不错。
|
||||||
例如在事件处理中根据某些参数动态设置[[yii\base\Application::language]]语言属性。
|
例如在事件处理中根据某些参数动态设置 [[yii\base\Application::language]] 语言属性。
|
||||||
|
|
||||||
|
|
||||||
### [[yii\base\Application::EVENT_AFTER_REQUEST|EVENT_AFTER_REQUEST]] <span id="afterRequest"></span>
|
### [[yii\base\Application::EVENT_AFTER_REQUEST|EVENT_AFTER_REQUEST]] <span id="afterRequest"></span>
|
||||||
|
|
||||||
该事件在应用处理请求*after*之后但在返回响应*before*之前触发,
|
该事件在应用处理请求 *after* 之后但在返回响应 *before* 之前触发,
|
||||||
实际的事件名为`afterRequest`。
|
实际的事件名为 `afterRequest`。
|
||||||
|
|
||||||
该事件触发时,请求已经被处理完,
|
该事件触发时,请求已经被处理完,
|
||||||
可以做一些请求后处理或自定义响应。
|
可以做一些请求后处理或自定义响应。
|
||||||
|
|
||||||
注意 [[yii\web\Response|response]] 组件在发送响应给终端用户时也会触发一些事件,
|
注意 [[yii\web\Response|response]] 组件在发送响应给终端用户时也会触发一些事件,
|
||||||
这些事件都在本事件*after*之后触发。
|
这些事件都在本事件 *after* 之后触发。
|
||||||
|
|
||||||
|
|
||||||
### [[yii\base\Application::EVENT_BEFORE_ACTION|EVENT_BEFORE_ACTION]] <span id="beforeAction"></span>
|
### [[yii\base\Application::EVENT_BEFORE_ACTION|EVENT_BEFORE_ACTION]] <span id="beforeAction"></span>
|
||||||
@ -567,7 +567,7 @@ $width = \Yii::$app->params['thumbnail.size'][0];
|
|||||||
实际的事件名为 `afterAction`.
|
实际的事件名为 `afterAction`.
|
||||||
|
|
||||||
该事件的参数为 [[yii\base\ActionEvent]] 实例,
|
该事件的参数为 [[yii\base\ActionEvent]] 实例,
|
||||||
通过[[yii\base\ActionEvent::result]]属性,
|
通过 [[yii\base\ActionEvent::result]] 属性,
|
||||||
事件处理可以访问和修改动作的结果。例如:
|
事件处理可以访问和修改动作的结果。例如:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
@ -597,7 +597,7 @@ $width = \Yii::$app->params['thumbnail.size'][0];
|
|||||||
1. 入口脚本加载应用主体配置数组。
|
1. 入口脚本加载应用主体配置数组。
|
||||||
2. 入口脚本创建一个应用主体实例:
|
2. 入口脚本创建一个应用主体实例:
|
||||||
* 调用 [[yii\base\Application::preInit()|preInit()]] 配置几个高级别应用主体属性,
|
* 调用 [[yii\base\Application::preInit()|preInit()]] 配置几个高级别应用主体属性,
|
||||||
比如[[yii\base\Application::basePath|basePath]]。
|
比如 [[yii\base\Application::basePath|basePath]]。
|
||||||
* 注册 [[yii\base\Application::errorHandler|error handler]] 错误处理方法.
|
* 注册 [[yii\base\Application::errorHandler|error handler]] 错误处理方法.
|
||||||
* 配置应用主体属性.
|
* 配置应用主体属性.
|
||||||
* 调用 [[yii\base\Application::init()|init()]] 初始化,该函数会调用 [[yii\base\Application::bootstrap()|bootstrap()]]
|
* 调用 [[yii\base\Application::init()|init()]] 初始化,该函数会调用 [[yii\base\Application::bootstrap()|bootstrap()]]
|
||||||
|
|||||||
Reference in New Issue
Block a user