|
|
@@ -1,12 +1,12 @@
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!-- EN-Revision: 22741 -->
|
|
|
-<!-- Reviewed: no -->
|
|
|
+<!-- Reviewed: 22741 -->
|
|
|
<sect1 id="zend.application.examples">
|
|
|
<title>Beispiele</title>
|
|
|
|
|
|
<para>
|
|
|
- Die Bootstrap Klasse selbst wird typischerweise sehr minimal sein; oft wird sie einfach
|
|
|
- nur ein leerer Stub sein der die Basis Bootstrapping Klasse erweitert:
|
|
|
+ Die Klasse Bootstrap selbst wird typischerweise sehr minimal sein; oft wird sie einfach
|
|
|
+ nur ein leerer Stub sein, der die Basis Bootstrapping-Klasse erweitert:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -36,43 +36,43 @@ resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
|
|
|
<title>Namespaces für Autoloader</title>
|
|
|
|
|
|
<para>
|
|
|
- Weil diese Beispiele eigenen Code verwenden müssen wir die Präfixe der Namespaces
|
|
|
+ Weil diese Beispiele eigenen Code verwenden, müssen wir die Präfixe der Namespaces
|
|
|
für diesen Code in unserer Konfiguration registrieren; dies wird mit dem
|
|
|
Konfigurationsschlüssel <property>autoloaderNamespaces</property> getan, welcher ein
|
|
|
Array ist.
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- Zusätzlich, um sicherzustellen das eigene Plugin Ressourcen erkannt werden, müssen wir
|
|
|
- einen Plugin Präfix Pfad in der Bootstrap registrieren. Das wird mit dem
|
|
|
+ Um zusätzlich sicherzustellen, dass eigene Plugin-Ressourcen erkannt werden, müssen wir
|
|
|
+ einen Plugin-Präfixpfad in der Bootstrap registrieren. Das wird mit dem
|
|
|
Konfigurationsschlüssel <property>pluginpaths</property> getan, welcher ein assoziatives
|
|
|
- Array ist, mit Schlüsseln die den zu verwendenden Präfix kennzeichnen , und Werten
|
|
|
- welche den Pfad kennzeichnen der diesem Präfix entspricht.
|
|
|
+ Array ist, mit Schlüsseln, die das zu verwendenden Präfix kennzeichnen, und Werten,
|
|
|
+ welche den Pfad enthalten, der diesem Präfix entspricht.
|
|
|
</para>
|
|
|
</note>
|
|
|
|
|
|
<para>
|
|
|
- Sollten trotzdem, eigene Initialisierungen notwendig sein, hat man zwei Möglichkeiten.
|
|
|
- Erstens, kann man Methoden schreiben die mit <emphasis>_init</emphasis> anfangen um eigenen
|
|
|
- Code zu spezifizieren der für das Bootstrapping verwendet werden soll. Diese Methoden
|
|
|
+ Sollten trotzdem eigene Initialisierungen notwendig sein, hat man zwei Möglichkeiten.
|
|
|
+ Erstens kann man Methoden schreiben, die mit <emphasis>_init</emphasis> anfangen, um eigenen
|
|
|
+ Code zu spezifizieren, der für das Bootstrapping verwendet werden soll. Diese Methoden
|
|
|
werden durch <methodname>bootstrap()</methodname> aufgerufen, und können genauso aufgerufen
|
|
|
- werden, wie wenn Sie öffentliche Methoden wären:
|
|
|
+ werden, wie wenn sie öffentliche Methoden wären:
|
|
|
<emphasis>bootstrap<resource>()</emphasis>. Sie sollten ein optionales Array an
|
|
|
Optionen akzeptieren.
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- Wenn die eigene Ressource Methode einen Wert zurückgibt, wird diese in einem Container
|
|
|
+ Wenn die eigene Ressource-Methode einen Wert zurückgibt, wird diese in einem Container
|
|
|
im Bootstrap gespeichert. Das kann nützlich sein, wenn verschiedene Ressourcen interagieren
|
|
|
- müssen (wie wenn eine Ressource sich selbst in eine andere Iniziiert). Die Methode
|
|
|
+ müssen (wie wenn eine Ressource sich selbst in eine andere iniziiert). Die Methode
|
|
|
<methodname>getResource()</methodname> kann dann verwendet werden, um diese Werte zu
|
|
|
erhalten.
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- Das Beispiel anbei zeigt eine Ressource Methode für die Initialisierung des Anfrage
|
|
|
- Objekts. Es verwendet die Erkennung der Abhängigkeit (diese hängt von der Front Controller
|
|
|
- Ressource ab), holt eine Ressource vom Bootstrap, und gibt einen Wert zurück, um ihn im
|
|
|
+ Das Beispiel unten zeigt eine Ressource-Methode für die Initialisierung des Anfrage-Objekts.
|
|
|
+ Es verwendet die Erkennung der Abhängigkeit (diese hängt von der Ressource FrontController
|
|
|
+ ab), holt eine Ressource vom Bootstrap, und gibt einen Wert zurück, um ihn im
|
|
|
Bootstrap zu speichern.
|
|
|
</para>
|
|
|
|
|
|
@@ -81,16 +81,16 @@ class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
|
|
|
{
|
|
|
protected function _initRequest()
|
|
|
{
|
|
|
- // Sicherstellen das eine Front Controller Instanz vorhanden ist
|
|
|
+ // Sicherstellen, dass eine FrontController-Instanz vorhanden ist
|
|
|
// und diese holen
|
|
|
$this->bootstrap('FrontController');
|
|
|
$front = $this->getResource('FrontController');
|
|
|
|
|
|
- // Das Anfrage Objekt initialisieren
|
|
|
+ // Das Anfrage-Objekt initialisieren
|
|
|
$request = new Zend_Controller_Request_Http();
|
|
|
$request->setBaseUrl('/foo');
|
|
|
|
|
|
- // Sie dem Front Controller hinzufügen
|
|
|
+ // Sie dem FrontController hinzufügen
|
|
|
$front->setRequest($request);
|
|
|
|
|
|
// Bootstrap speichert den Wert im 'request' Schlüssel
|
|
|
@@ -101,44 +101,44 @@ class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- Beachte in diesem Beispiel den Aufruf von <methodname>bootstrap()</methodname>; dieser
|
|
|
- stellt sicher, dass der Front Controller initialisiert wurde bevor die Methode aufgerufen
|
|
|
+ Man beachte in diesem Beispiel den Aufruf von <methodname>bootstrap()</methodname>; dieser
|
|
|
+ stellt sicher, dass der FrontController initialisiert wurde, bevor die Methode aufgerufen
|
|
|
wird. Dieser Aufruf kann entweder eine Ressource oder eine andere Methode in der Klasse
|
|
|
auslösen.
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- Die andere Option ist, die Verwendung eines Ressource Plugins. Ressource Plugins sind
|
|
|
- Objekte die spezielle Initialisierungen ausführen, und die wie folgt spezifiziert werden
|
|
|
+ Die andere Option ist, die Verwendung eines Ressource-Plugins. Ressource-Plugins sind
|
|
|
+ Objekte, die spezielle Initialisierungen ausführen, und die wie folgt spezifiziert werden
|
|
|
können:
|
|
|
</para>
|
|
|
|
|
|
<itemizedlist>
|
|
|
<listitem>
|
|
|
<para>
|
|
|
- Während der Instanzierung des <classname>Zend_Application</classname> Objekts
|
|
|
+ Während der Instanzierung des Objekts <classname>Zend_Application</classname>
|
|
|
</para>
|
|
|
</listitem>
|
|
|
|
|
|
<listitem>
|
|
|
<para>
|
|
|
- Während der Initialisierung des Bootstrap Objekts
|
|
|
+ Während der Initialisierung des Objekts Bootstrap
|
|
|
</para>
|
|
|
</listitem>
|
|
|
|
|
|
<listitem>
|
|
|
<para>
|
|
|
- Durch explizites Einschalten über Methodenaufrufe auf dem Bootstrap Objekt
|
|
|
+ Durch explizites Einschalten über Methodenaufrufe auf dem Objekt Bootstrap
|
|
|
</para>
|
|
|
</listitem>
|
|
|
</itemizedlist>
|
|
|
|
|
|
<para>
|
|
|
- Ressource Plugins implementieren
|
|
|
+ Ressource-Plugins implementieren
|
|
|
<classname>Zend_Application_Resource_ResourceAbstract</classname>, welche einfach
|
|
|
definieren, dass sie Injektion des Aufrufers und von Optionen erlauben, und die eine
|
|
|
- <methodname>init()</methodname> Methode haben. Als Beispiel, könnte eine eigene "View"
|
|
|
- Bootstrap Ressource wie folgt aussehen:
|
|
|
+ <methodname>init()</methodname> Methode haben. Als Beispiel, könnte eine eigene
|
|
|
+ "View"-Bootstrap-Ressource wie folgt aussehen:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -174,8 +174,8 @@ class My_Bootstrap_Resource_View
|
|
|
|
|
|
<para>
|
|
|
Um der Bootstrap zu sagen, dass sie das verwenden soll, würde man entweder den Klassennamen
|
|
|
- des Ressource Plugins übergeben müssen, oder eine Kombination eines Plugin Loader
|
|
|
- Präfixpfades und den Kurznamen des Ressource Plugins (z.B. "view"):
|
|
|
+ des Ressource-Plugins übergeben müssen, oder eine Kombination eines Plugin Loader
|
|
|
+ Präfixpfades und den Kurznamen des Ressource-Plugins (z.B. "view"):
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -200,7 +200,7 @@ $application = new Zend_Application(
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- Ressource Plugins können andere Ressourcen und Initialisierungen aufrufen, indem Sie auf den
|
|
|
+ Ressource-Plugins können andere Ressourcen und Initialisierungen aufrufen, indem sie auf den
|
|
|
Eltern-Bootstrap zugreifen:
|
|
|
</para>
|
|
|
|
|
|
@@ -210,10 +210,10 @@ class My_Bootstrap_Resource_Layout
|
|
|
{
|
|
|
public function init()
|
|
|
{
|
|
|
- // Sicherstellen das die View initialisiert ist...
|
|
|
+ // Sicherstellen, dass die View initialisiert ist...
|
|
|
$this->getBootstrap()->bootstrap('view');
|
|
|
|
|
|
- // Das View Objekt erhalten
|
|
|
+ // Das View-Objekt erhalten
|
|
|
$view = $this->getBootstrap()->getResource('view');
|
|
|
|
|
|
// ...
|
|
|
@@ -222,7 +222,7 @@ class My_Bootstrap_Resource_Layout
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- Bei normaler Verwendung, würde man die Anwendung instanzieren, sie bootstrappen, und
|
|
|
+ Bei normaler Verwendung würde man die Anwendung instanzieren, sie bootstrappen, und
|
|
|
anschließend ausführen:
|
|
|
</para>
|
|
|
|
|
|
@@ -246,7 +246,7 @@ echo $service->handle();
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- Statt der Verwendung der <methodname>bootstrap()</methodname> Methode, um interne Methoden
|
|
|
+ Statt der Verwendung der Methode <methodname>bootstrap()</methodname>, um interne Methoden
|
|
|
oder Ressourcen aufzurufen, kann man auch Überladung verwenden:
|
|
|
</para>
|
|
|
|