<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect1 id="migration.08">
    <title>Zend Framework 0.8</title>

    <para>
        Lors de la migration d'un version précédente vers Zend Framework 0.8 ou plus récent
        vous devriez prendre note de ce qui suit.
    </para>

    <sect2 id="migration.08.zend.controller">
        <title>Zend_Controller</title>

        <para>
            Pour les versions précédentes, l'utilisation basique des composants <acronym>MVC</acronym> reste la
            même&#160;:
        </para>

        <programlisting language="php"><![CDATA[
Zend_Controller_Front::run('/chemin/vers/controleurs');
]]></programlisting>

        <para>
            Cependant, la structure des dossiers a subi une réorganisation, certains
            composants ont été effacés, et d'autres ont été soit renommés soit ajoutés. Les
            changements incluent&#160;:
        </para>

        <itemizedlist>
            <listitem>
                <para>
                    <classname>Zend_Controller_Router</classname> a été effacé en faveur du
                    routeur de réécriture ("rewrite router").
                </para>
            </listitem>
            <listitem>
                <para>
                    <classname>Zend_Controller_RewriteRouter</classname> a été renommé en
                    <classname>Zend_Controller_Router_Rewrite</classname>, et promu en tant que
                    routeur standard fourni avec le framework ;
                    <classname>Zend_Controller_Front</classname> l'utilise par défaut si aucun
                    autre routeur n'est fourni.
                </para>
            </listitem>
            <listitem>
                <para>
                    Une nouvelle classe de route à utiliser avec le routeur de réécriture a
                    été introduite, <classname>Zend_Controller_Router_Route_Module</classname> ;
                    elle couvre la route par défaut utilisée par le <acronym>MVC</acronym>, et supporte les
                    <link linkend="zend.controller.modular">modules de contrôleurs</link>.
                </para>
            </listitem>
            <listitem>
                <para>
                    <classname>Zend_Controller_Router_StaticRoute</classname> a été renommé
                    en <classname>Zend_Controller_Router_Route_Static</classname>.
                </para>
            </listitem>
            <listitem>
                <para>
                    <classname>Zend_Controller_Dispatcher</classname> a été renommé en
                    <classname>Zend_Controller_Dispatcher_Standard</classname>.
                </para>
            </listitem>
            <listitem>
                <para>
                    Les arguments de
                    <methodname>Zend_Controller_Action::_forward()</methodname> ont changés. La
                    signature est maintenant&#160;:
                </para>
                <programlisting language="php"><![CDATA[
final protected function _forward($action,
                                  $controller = null,
                                  $module = null,
                                  array $params = null);
]]></programlisting>
                <para>
                    <varname>$action</varname> est toujours obligatoire ; si aucun contrôleur n'est
                    spécifié, une action dans le contrôleur courant est considérée.
                    <varname>$module</varname> est toujours ignoré à moins que <varname>$controller</varname>
                    ne soit spécifié. Pour finir, tout <varname>$params</varname> fourni sera ajouté à
                    l'objet requête. Si aucun contrôleur ou module n'est nécessaire, mais que des
                    paramètres le sont, passez simplement <constant>NULL</constant> pour ces
                    valeurs.
                </para>
            </listitem>
        </itemizedlist>
    </sect2>
</sect1>