| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <!-- EN-Revision: 16847 -->
- <sect2 id="zend.application.available-resources.frontcontroller">
- <title>Zend_Application_Resource_Frontcontroller</title>
- <para>
- おそらく、あなたが<classname>Zend_Application</classname>でロードする
- 最も一般的なリソースはフロントコントローラ・リソースです。
- そして、それは<classname>Zend_Controller_Front</classname>を構成する能力を提供します。
- このリソースは、
- 任意のフロントコントローラ・パラメータを設定したり、初期化するプラグインを指定したり、
- そのほかにも能力を提供します。
- </para>
- <para>
- 一旦初期化されると、
- リソースはブートストラップの<varname>$frontController</varname>プロパティを
- <classname>Zend_Controller_Front</classname>インスタンスに割り当てます。
- </para>
- <para>
- 利用できる構成キーは以下を含みます。大文字と小文字の区別をしません:
- </para>
- <itemizedlist>
- <listitem><para>
- <emphasis><property>controllerDirectory</property></emphasis>:
- コントローラ・ディレクトリを単独で指定している文字列値か、
- またはモジュールからコントローラ・ディレクトリへの連想配列。
- </para></listitem>
- <listitem><para>
- <emphasis><property>moduleControllerDirectoryName</property></emphasis>:
- コントローラを含むモジュールの配下でサブディレクトリを示す文字列値
- </para></listitem>
- <listitem><para>
- <emphasis><property>moduleDirectory</property></emphasis>:
- モジュールが見つかるかもしれないディレクトリ
- </para></listitem>
- <listitem><para>
- <emphasis><property>defaultControllerName</property></emphasis>:
- デフォルト・コントローラの基底名。(通常は "index")
- </para></listitem>
- <listitem><para>
- <emphasis><property>defaultAction</property></emphasis>:
- デフォルト・アクションの基底名。(通常は "index")
- </para></listitem>
- <listitem><para>
- <emphasis><property>defaultModule</property></emphasis>:
- デフォルト・モジュールの基底名。(通常は "default")
- </para></listitem>
- <listitem><para>
- <emphasis><property>baseUrl</property></emphasis>:
- アプリケーションに対して明示された基底<acronym>URL</acronym>
- (通常は自動検出)
- </para></listitem>
- <listitem><para>
- <emphasis><property>plugins</property></emphasis>:
- フロントコントローラのプラグイン・クラス名配列
- このリソースは、各々のクラスを(コンストラクタ引数なしで)インスタンス化して、
- それからフロントコントローラでインスタンスを登録します。
- </para></listitem>
- <listitem><para>
- <emphasis><property>params</property></emphasis>:
- フロントコントローラに登録する連想配列
- </para></listitem>
- </itemizedlist>
- <para>
- 認識されていないキーが与えられると、
- <methodname>setParam()</methodname>に渡すことで、
- フロントコントローラ・パラメータとして登録されます。
- </para>
- <example id="zend.application.available-resources.frontcontroller.configExample">
- <title>フロントコントローラ・リソース構成サンプル</title>
- <para>
- 下記は、フロントコントローラ・リソースを設定する方法を示す<acronym>INI</acronym>スニペット・サンプルです。
- </para>
- <programlisting language="ini"><![CDATA[
- [production]
- resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
- resources.frontController.moduleControllerDirectoryName = "actions"
- resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
- resources.frontController.defaultControllerName = "site"
- resources.frontController.defaultAction = "home"
- resources.frontController.defaultModule = "static"
- resources.frontController.baseUrl = "/subdir"
- resources.frontController.plugins.foo = "My_Plugin_Foo"
- resources.frontController.plugins.bar = "My_Plugin_Bar"
- resources.frontController.env = APPLICATION_ENV
- ]]></programlisting>
- </example>
- <example id="zend.application.available-resources.frontcontroller.propertyExample">
- <title>ブートストラップでフロントコントローラを取得</title>
- <para>
- 一旦フロントコントローラ・リソースが初期化されたら、
- ブートストラップの<varname>$frontController</varname>プロパティを通じて
- フロントコントローラ・インスタンスを取ってくることができます。
- </para>
- <programlisting language="php"><![CDATA[
- $bootstrap->bootstrap('frontController');
- $front = $bootstrap->frontController;
- ]]></programlisting>
- </example>
- </sect2>
|