|
|
@@ -0,0 +1,114 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
+<!-- EN-Revision: 15787 -->
|
|
|
+<!-- Reviewed: no -->
|
|
|
+<sect2 id="zend.application.available-resources.frontcontroller">
|
|
|
+ <title>Zend_Application_Resource_Frontcontroller</title>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ Probablement la ressource que vous allez le plus communément charger avec
|
|
|
+ <classname>Zend_Application</classname> sera la ressource de contrôleur frontal qui fournit
|
|
|
+ la possibilité de configurer <classname>Zend_Controller_Front</classname>. Cette ressource
|
|
|
+ permet de spécifier n'importe quel paramètre du contrôleur frontal, de spécifier les plugins
|
|
|
+ à initialiser, et bien plus...
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ Une fois initialisée, la ressource assigne la propriété <varname>$frontController</varname>
|
|
|
+ du fichier d'initialisation à l'instance <classname>Zend_Controller_Front</classname>.
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ Les clés de configuration disponibles incluent les suivantes et sont sensibles à la
|
|
|
+ casse :
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <itemizedlist>
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>controllerDirectory</emphasis> : une chaîne de caractères spécifiant un
|
|
|
+ seul dossier de contrôleurs, ou un tableau associant un nom de module et un dossier de
|
|
|
+ contrôleurs.
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>moduleControllerDirectoryName</emphasis> : une chaîne de caractères
|
|
|
+ indiquant un sous-dossier dans ce module qui contient les contrôleurs.
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>moduleDirectory</emphasis> : un dossier dans lequel tous les modules
|
|
|
+ peuvent être trouvés.
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>defaultControllerName</emphasis> : nom du contrôleur par défaut
|
|
|
+ (normalement "index").
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>defaultAction</emphasis> : nom de l'action par défaut (normalement
|
|
|
+ "index").
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>defaultModule</emphasis> : nom du module par défaut (normalement "default").
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>baseUrl</emphasis> : <acronym>URL</acronym> de base explicite vers
|
|
|
+ l'application (normalement auto-détecté).
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>plugins</emphasis> : tableau de nom de classe de plugins de contrôleurs.
|
|
|
+ La ressource instanciera chaque classe (sans arguments de contructeur) et les
|
|
|
+ enregistrera dans le contrôleur frontal.
|
|
|
+ </para></listitem>
|
|
|
+
|
|
|
+ <listitem><para>
|
|
|
+ <emphasis>params</emphasis> : tableau de paires clés / valeurs à enregistrer dans
|
|
|
+ le contrôleur frontal.
|
|
|
+ </para></listitem>
|
|
|
+ </itemizedlist>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ Si une clé non-connue est fournie, elle sera enregistrée comme paramètre du contrôleur
|
|
|
+ frontal en la fournissant à <methodname>setParam()</methodname>.
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <example id="zend.application.available-resources.frontcontroller.configExample">
|
|
|
+ <title>Exemple de configuration d'une ressource de contrôleur frontal</title>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ Voici un extrait de configuration <acronym>INI</acronym> montrant comment configurer
|
|
|
+ la ressource de contrôleur frontal.
|
|
|
+ </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>Récupération de votre contrôleur frontal à partir de votre initialiseur</title>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ Une fois la ressource de contrôleur frontal initialisée, vous pouvez récupérer
|
|
|
+ l'instance via la propriété <varname>$frontController</varname> de votre initialiseur.
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <programlisting language="php"><![CDATA[
|
|
|
+$bootstrap->bootstrap('frontController');
|
|
|
+$front = $bootstrap->frontController;
|
|
|
+]]></programlisting>
|
|
|
+ </example>
|
|
|
+</sect2>
|