Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yii2
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
PSDI Army
yii2
Commits
d148fee1
Commit
d148fee1
authored
Nov 27, 2014
by
Nobuo Kihara
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
docs/guide-ja/structure-application-components.md - "config" => "構成(情報)" [ci skip]
parent
74e0fee7
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
16 deletions
+15
-16
structure-application-components.md
docs/guide-ja/structure-application-components.md
+15
-16
No files found.
docs/guide-ja/structure-application-components.md
View file @
d148fee1
...
...
@@ -3,11 +3,10 @@
アプリケーションは
[
サービスロケータ
](
concept-service-locator.md
)
です。
アプリケーションは、リクエストを処理するためのいろいろなサービスを提供する一連のオブジェクト、いわゆる
*アプリケーションコンポーネント*
をホストします。
例えば、
`urlManager`
がウェブリクエストを適切なコントローラにルーティングする役割を負い、
`db`
コンポーネントが DB 関連のサービスを提供する、等々です。
例えば、
`urlManager`
がウェブリクエストを適切なコントローラにルーティングする役割を負い、
`db`
コンポーネントが DB 関連のサービスを提供する、等々です。
全てのアプリケーションコンポーネントは、それぞれ、同一のアプリケーション内で他のアプリケーションコンポーネントから区別できるように、ユニークな ID を持ちます。
アプリケーションコンポーネントには、次の式によってアクセス出来ます
:
アプリケーションコンポーネントには、次の式によってアクセス出来ます
。
```
php
\Yii
::
$app
->
componentID
...
...
@@ -20,7 +19,7 @@
二度目以降のアクセスでは、同じコンポーネントのインスタンスが返されます。
どのようなオブジェクトでも、アプリケーションコンポーネントとすることが可能です。
[
アプリケーションの
設定
情報
](
structure-applications.md#application-configurations
)
の中で
[
[yii\base\Application::components
]
] プロパティを構成することによって、アプリケーションコンポーネントを登録することが出来ます。
[
アプリケーションの
構成
情報
](
structure-applications.md#application-configurations
)
の中で
[
[yii\base\Application::components
]
] プロパティを構成することによって、アプリケーションコンポーネントを登録することが出来ます。
例えば、
```
php
...
...
@@ -29,7 +28,7 @@
// クラス名を使って "cache" コンポーネントを登録
'cache'
=>
'yii\caching\ApcCache'
,
//
設定
情報の配列を使って "db" コンポーネントを登録
//
構成
情報の配列を使って "db" コンポーネントを登録
'db'
=>
[
'class'
=>
'yii\db\Connection'
,
'dsn'
=>
'mysql:host=localhost;dbname=demo'
,
...
...
@@ -54,12 +53,11 @@
## コンポーネントをブートストラップに含める<a name="bootstrapping-components"></a>
上述のように、アプリケーションコンポーネントは最初にアクセスされた時に初めてインスタンスが作成されます。
リクエストの間に全くアクセスされなかった時は、インスタンスは作成されません。けれども、場合によっては、
明示的にアクセスされないときでも、リクエストごとにアプリケーションコンポーネントのインスタンスを作成する必要があることがあります。
そうするためには、アプリケーションの
[
[yii\base\Application::bootstrap|bootstrap
]
] プロパティのリストに
そういうコンポーネントの ID を挙げることが出来ます。
リクエストの間に全くアクセスされなかった時は、インスタンスは作成されません。
けれども、場合によっては、明示的にアクセスされないときでも、リクエストごとにアプリケーションコンポーネントのインスタンスを作成したいことがあります。
そうするためには、アプリケーションの
[
[yii\base\Application::bootstrap|bootstrap
]
] プロパティのリストにそのコンポーネントの ID を挙げることが出来ます。
例えば、次のアプリケーション
設定
情報は、
`log`
コンポーネントが常にロードされることを保証するものです。
例えば、次のアプリケーション
構成
情報は、
`log`
コンポーネントが常にロードされることを保証するものです。
```
php
[
...
...
@@ -68,7 +66,7 @@
],
'components'
=>
[
'log'
=>
[
// "log" コンポーネントの
設定
情報
// "log" コンポーネントの
構成
情報
],
],
]
...
...
@@ -77,13 +75,14 @@
## コアアプリケーションコンポーネント<a name="core-application-components"></a>
Yii は固定の ID とデフォルトの設定情報を持つ一連の
*コア*
アプリケーションコンポーネントを定義しています。
例えば、
[
[yii\web\Application::request|request
]
] コンポーネントは、ユーザリクエストに関する情報を収集して、それを
[
ルート
](
runtime-routing.md
)
として解決します。
[
[yii\base\Application::db|db
]
] コンポーネントは、それを通じてデータベースクエリを実行できるデータベース接続を表現します。
Yii のアプリケーションがユーザリクエストを処理することが出来るのは、まさにこれらのコアアプリケーションコンポーネントの助力によります。
Yii は固定の ID とデフォルトの構成情報を持つ一連の
*コア*
アプリケーションコンポーネントを定義しています。
例えば、
[
[yii\web\Application::request|request
]
] コンポーネントは、ユーザリクエストに関する情報を収集して、それを
[
ルート
](
runtime-routing.md
)
として解決するために使用されます。
また、
[
[yii\base\Application::db|db
]
] コンポーネントは、それを通じてデータベースクエリを実行できるデータベース接続を表現します。
Yii のアプリケーションがユーザリクエストを処理出来るのは、まさにこれらのコアアプリケーションコンポーネントの助けがあってこそです。
下記が事前に定義されたコアアプリケーションコンポーネントです。
通常のアプリケーションコンポーネントに対するのと同様に、これらを構成し、カスタマイズすることが出来ます。
コアアプリケーションコンポーネントを構成するときは、クラスを指定しな
ければ
、デフォルトのクラスが使用されます。
コアアプリケーションコンポーネントを構成するときは、クラスを指定しな
い場合は
、デフォルトのクラスが使用されます。
*
[
[yii\web\AssetManager|assetManager
]
]: アセットバンドルとアセットの発行を管理します。
詳細は
[
アセット
](
structure-assets.md
)
の節を参照してください。
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment