migration-16.xml 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="migration.16">
  5. <title>Zend Framework 1.6</title>
  6. <para>
  7. Lors de la migration d'un version précédente vers Zend Framework 1.6 ou plus récent
  8. vous devriez prendre note de ce qui suit.
  9. </para>
  10. <sect2 id="migration.16.zend.controller">
  11. <title>Zend_Controller</title>
  12. <sect3 id="migration.16.zend.controller.dispatcher">
  13. <title>Changement dans l'interface Dispatcher</title>
  14. <para>
  15. Les utilisateurs ont porté à notre connaissance le fait que
  16. <classname>Zend_Controller_Front</classname> et
  17. <classname>Zend_Controller_Router_Route_Module</classname> utilisent tous les deux
  18. des méthodes du distributeur qui ne sont pas dans l'interface associée. Nous avons
  19. donc ajouté les trois méthodes suivantes pour s'assurer que les distributeurs
  20. personnalisés continueront à fonctionner avec les implémentations embarquées&#160;:
  21. </para>
  22. <itemizedlist>
  23. <listitem>
  24. <para>
  25. <methodname>getDefaultModule()</methodname>&#160;: retourne le nom du module par
  26. défaut.
  27. </para>
  28. </listitem>
  29. <listitem>
  30. <para>
  31. <methodname>getDefaultControllerName()</methodname>&#160;: retourne le nom du
  32. contrôleur par défaut.
  33. </para>
  34. </listitem>
  35. <listitem>
  36. <para>
  37. <methodname>getDefaultAction()</methodname>&#160;: retourne le nom de l'action par
  38. défaut.
  39. </para>
  40. </listitem>
  41. </itemizedlist>
  42. </sect3>
  43. </sect2>
  44. <sect2 id="migration.16.zend.file.transfer">
  45. <title>Zend_File_Transfer</title>
  46. <sect3 id="migration.16.zend.file.transfer.validators">
  47. <title>Changements quand vous utilisez des validateurs</title>
  48. <para>
  49. Certaines remarques des utilisateurs indiquaient que les validateurs de
  50. <classname>Zend_File_Transfer</classname> ne fonctionnaient pas comme ceux par
  51. défaut fournis avec <classname>Zend_Form</classname>.
  52. <classname>Zend_Form</classname> permet par exemple l'utilisation du paramètre
  53. <code>breakChainOnFailure</code> qui stoppe la validation de tous les validateurs
  54. suivants dès qu'une erreur de validation apparaît.
  55. </para>
  56. <para>
  57. Nous avons donc ajouter ce paramètre à tous les validateurs existants pour
  58. <classname>Zend_File_Transfer</classname>.
  59. </para>
  60. <itemizedlist>
  61. <listitem>
  62. <para>
  63. Ancienne <acronym>API</acronym>&#160;: <code>addValidator($validator, $options,
  64. $files)</code>.
  65. </para>
  66. </listitem>
  67. <listitem>
  68. <para>
  69. Nouvelle <acronym>API</acronym>&#160;: <code>addValidator($validator, $breakChainOnFailure,
  70. $options, $files)</code>.
  71. </para>
  72. </listitem>
  73. </itemizedlist>
  74. <para>
  75. Pour migrer vos scripts vers la nouvelle <acronym>API</acronym>, ajoutez simplement un a
  76. <constant>FALSE</constant> après voir défini le validateur souhaité.
  77. </para>
  78. <example id="migration.16.zend.file.transfer.example">
  79. <title>Changer les validateurs de fichiers de 1.6.1 vers 1.6.2</title>
  80. <programlisting language="php"><![CDATA[
  81. // Exemple pour 1.6.1
  82. $upload = new Zend_File_Transfer_Adapter_Http();
  83. $upload->addValidator('FilesSize', array('1B', '100kB'));
  84. // Même exemple pour 1.6.2 et plus récent
  85. // Notez l'ajout du booléen false
  86. $upload = new Zend_File_Transfer_Adapter_Http();
  87. $upload->addValidator('FilesSize', false, array('1B', '100kB'));
  88. ]]></programlisting>
  89. </example>
  90. </sect3>
  91. </sect2>
  92. </sect1>