| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="migration.08">
- <title>Zend Framework 0.8</title>
- <para>
- Wenn man von einem älteren Release auf Zend Framework 0.8 oder höher hochrüstet sollte
- man die folgenden Migrations Hinweise beachten.
- </para>
- <sect2 id="migration.08.zend.controller">
- <title>Zend_Controller</title>
- <para>
- Durch bisherige Änderungen bleibt die wesentliche Verwendung der <acronym>MVC</acronym>
- Komponenten gleich:
- </para>
- <programlisting language="php"><![CDATA[
- require_once 'Zend/Controller/Front.php';
- Zend_Controller_Front::run('/path/to/controllers');
- ]]></programlisting>
- <para>
- Dennoch wurde die Verzeichnisstruktur gründliche überarbeitet, verschiedene Komponenten
- wurden entfernt und mehrere andere umbenannt und hinzugefügt. Die Änderungen beinhalten:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <classname>Zend_Controller_Router</classname> wurde entfernt für den Rewrite
- Router entfernt.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>Zend_Controller_RewriteRouter</classname> wurde in
- <classname>Zend_Controller_Router_Rewrite</classname> umbenannt und zum Standard
- Router befördert, der mit dem Framework ausgeliefert wird;
- <classname>Zend_Controller_Front</classname> wird ihn als Standard verwenden,
- wenn kein anderer Router übergeben wird.
- </para>
- </listitem>
- <listitem>
- <para>
- Eine neue Route Klasse für die Verwendung mit dem Rewrite Router wurde
- eingeführt: <classname>Zend_Controller_Router_Route_Module</classname>; sie
- deckt die Standardrouten ab, die vom <acronym>MVC</acronym> verwendet werden
- und bietet die Unterstützung für <link
- linkend="zend.controller.modular">Controller Module</link>.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>Zend_Controller_Router_StaticRoute</classname> wurde umbenannt in
- <classname>Zend_Controller_Router_Route_Static</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>Zend_Controller_Dispatcher</classname> wurde umbenannt in
- <classname>Zend_Controller_Dispatcher_Standard</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <methodname>Zend_Controller_Action::_forward()</methodname>'s Argumente wurden
- geändert. Die Signatur ist nun:
- </para>
- <programlisting language="php"><![CDATA[
- final protected function _forward($action,
- $controller = null,
- $module = null,
- array $params = null);
- ]]></programlisting>
- <para>
- <varname>$action</varname> wird immer benötigt; wenn kein Controller angegeben
- wird, wird eine Action im aktuellen Controller angenommen.
- <varname>$module</varname> wird immer ignoriert, es sei denn
- <varname>$controller</varname> wird angegeben. Schließlich werden alle
- übergebenen Parameter <varname>$params</varname> an das Request Objekt
- angehängt. Wenn man keinen Controller oder kein Modul angeben, aber dennoch
- Parameter übergeben möchte, gibt man einfach <constant>NULL</constant> für diese
- Werte an.
- </para>
- </listitem>
- </itemizedlist>
- </sect2>
- </sect1>
|