migration-08.xml 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="migration.08">
  5. <title>Zend Framework 0.8</title>
  6. <para>
  7. Lors de la migration d'un version précédente vers Zend Framework 0.8 ou plus récent
  8. vous devriez prendre note de ce qui suit.
  9. </para>
  10. <sect2 id="migration.08.zend.controller">
  11. <title>Zend_Controller</title>
  12. <para>
  13. Pour les versions précédentes, l'utilisation basique des composants <acronym>MVC</acronym> reste la
  14. même&#160;:
  15. </para>
  16. <programlisting language="php"><![CDATA[
  17. Zend_Controller_Front::run('/chemin/vers/controleurs');
  18. ]]></programlisting>
  19. <para>
  20. Cependant, la structure des dossiers a subi une réorganisation, certains
  21. composants ont été effacés, et d'autres ont été soit renommés soit ajoutés. Les
  22. changements incluent&#160;:
  23. </para>
  24. <itemizedlist>
  25. <listitem>
  26. <para>
  27. <classname>Zend_Controller_Router</classname> a été effacé en faveur du
  28. routeur de réécriture ("rewrite router").
  29. </para>
  30. </listitem>
  31. <listitem>
  32. <para>
  33. <classname>Zend_Controller_RewriteRouter</classname> a été renommé en
  34. <classname>Zend_Controller_Router_Rewrite</classname>, et promu en tant que
  35. routeur standard fourni avec le framework ;
  36. <classname>Zend_Controller_Front</classname> l'utilise par défaut si aucun
  37. autre routeur n'est fourni.
  38. </para>
  39. </listitem>
  40. <listitem>
  41. <para>
  42. Une nouvelle classe de route à utiliser avec le routeur de réécriture a
  43. été introduite, <classname>Zend_Controller_Router_Route_Module</classname> ;
  44. elle couvre la route par défaut utilisée par le <acronym>MVC</acronym>, et supporte les
  45. <link linkend="zend.controller.modular">modules de contrôleurs</link>.
  46. </para>
  47. </listitem>
  48. <listitem>
  49. <para>
  50. <classname>Zend_Controller_Router_StaticRoute</classname> a été renommé
  51. en <classname>Zend_Controller_Router_Route_Static</classname>.
  52. </para>
  53. </listitem>
  54. <listitem>
  55. <para>
  56. <classname>Zend_Controller_Dispatcher</classname> a été renommé en
  57. <classname>Zend_Controller_Dispatcher_Standard</classname>.
  58. </para>
  59. </listitem>
  60. <listitem>
  61. <para>
  62. Les arguments de
  63. <methodname>Zend_Controller_Action::_forward()</methodname> ont changés. La
  64. signature est maintenant&#160;:
  65. </para>
  66. <programlisting language="php"><![CDATA[
  67. final protected function _forward($action,
  68. $controller = null,
  69. $module = null,
  70. array $params = null);
  71. ]]></programlisting>
  72. <para>
  73. <varname>$action</varname> est toujours obligatoire ; si aucun contrôleur n'est
  74. spécifié, une action dans le contrôleur courant est considérée.
  75. <varname>$module</varname> est toujours ignoré à moins que <varname>$controller</varname>
  76. ne soit spécifié. Pour finir, tout <varname>$params</varname> fourni sera ajouté à
  77. l'objet requête. Si aucun contrôleur ou module n'est nécessaire, mais que des
  78. paramètres le sont, passez simplement <constant>NULL</constant> pour ces
  79. valeurs.
  80. </para>
  81. </listitem>
  82. </itemizedlist>
  83. </sect2>
  84. </sect1>