Programmer's Reference Guide
| Beispiele |
Kern Funktionalität
Hier findet man API-artige Dokumentation über alle Kern Komponenten von Zend_Application.
Zend_Application
Zend_Application bietet die Basisfunktionalität der Komponente, und ist der Eintrittspunkt zur eigenen Zend Framework Anwendung. Sein Zweck ist zweigeteilt: das Setup der PHP Umgebung (inklusive Autoloading), und das Anwendungs-Bootstrap auszuführen.
Typischerweise, wird man die komplette Konfiguration an den Zend_Application Konstruktor übergeben, aber man kann das Objekt auch komplett konfigurieren indem dessen eigene Methoden verwendet werden. Diese Referenz dient dazu beide Fälle zu zeigen.
| Option | Beschreibung |
|---|---|
phpSettings |
Array von php.ini Einstellungen die zu verwenden sind. Die Schlüssel sollten die php.ini Schlüssel sein. |
includePaths |
Zusätzliche Pfade die dem |
autoloaderNamespaces |
Array von zusätzlichen Namespaces die bei der Zend_Loader_Autoloader Instanz zu registrieren sind. |
bootstrap |
Entweder der String mit dem Pfad zur Bootstrap Klasse, oder ein Array mit Elementen für 'path' und 'class' für den Bootstrap der Anwendung. |
Hinweis: Namen der Optionen
Beachten Sie das die Namen für die Optionen von der Groß-/Kleinschreibung abhängen.
| Methode | Rückgabewert | Parameter | Beschreibung |
|---|---|---|---|
__construct($environment, $options = null) |
void |
|
Konstruktor. Die Argumente sind wie beschrieben, und werden verwendet
um den initialen Objektstatus zu setzen. Eine Instanz von
Zend_Loader_Autoloader wird wärend der Instanziierung
registriert. Optionen die an den Konstruktor übergeben werden, werden
an |
getEnvironment() |
string |
N/A | Empfangen des Umgebungsstrings der an den Konstruktor übergeben wurde. |
getAutoloader() |
Zend_Loader_Autoloader | N/A | Empfangen der Zend_Loader_Autoloader Instanz die wärend der Instanziierung registriert wurde. |
setOptions(array $options) |
Zend_Application |
|
Alle Optionen werden intern gespeichert, und der mehrfache Aufruf der
Methode wird Optionen zusammenfügen. Optionen die zu den verschiedenen
Setter Methoden passen werden an diese Methoden übergeben. Als Beispiel
wird die Option "phpSettings" dann an |
getOptions() |
array |
N/A | Empfängt alle Optionen die verwendet wurden um das Objekt zu initialisieren; könnte verwendet werden um Zend_Config Optionen zwischen Anfragen in ein serialisierbares Format zu cachen. |
hasOption($key) |
boolean |
|
Erkennt ob eine Option mit dem spezifizierten Schlüssel registriert wurde oder nicht. Schlüssel sind unabhängig von der Groß-/Kleinschreibung. |
getOption($key) |
mixed |
|
Empfängt den Optionswert eines angegebenen Schlüssels. Gibt null zurück wenn der Schlüssel nicht existiert. |
setPhpSettings(array $settings, $prefix = '') |
Zend_Application |
|
Setzt Laufzeit php.ini Einstellungen. Punkt-getrennte Einstellungen können hierarchisch verschachtelt sein (welche in Zend_Config INI Dateien auftreten können) über ein Array-von-Arrays, und wird trotzdem korrekt aufgelöst. |
setAutoloaderNamespaces(array $namespaces) |
Zend_Application |
|
Registriert den Namespace mit der Zend_Loader_Autoloader Instanz. |
setBootstrap($path, $class = null) |
Zend_Application |
|
|
getBootstrap() |
null | Zend_Application_Bootstrap_Bootstrapper |
N/A | Empfängt die registrierte Bootstrap Instanz. |
bootstrap() |
void |
N/A |
Ruft die |
run() |
void |
N/A |
Ruf die |
Zend_Application_Bootstrap_Bootstrapper
Zend_Application_Bootstrap_Bootstrapper ist das Basisinterface das alle Bootstrap Klassen implementieren müssen. Die Basisfunktionalität zielt auf Konfiguration, Identifikation von Ressourcen, Bootstrapping (entweder von individuellen Ressourcen oder der kompletten Anwendung), und dem Dispatchen der Anwendung ab.
Die folgenden Methoden sind zusammengenommen die Definition des Interfaces.
| Methode | Rückgabewert | Parameter | Beschreibung |
|---|---|---|---|
__construct($application) |
void |
|
Konstruktor. Akzeptiert ein einzelnes Argument, welche ein Zend_Application oder ein anderes Bootstrap Objekt sein sollte. |
setOptions(array $options) |
Zend_Application_Bootstrap_Bootstrapper |
|
Typischerweise wird jede Option die einen passenden Setter hat diesen Setter aufrufen; andernfalls, wird die Option einfach für ein späteres Empfangen gespeichert. |
getApplication() |
Zend_Application | Zend_Application_Bootstrap_Bootstrapper | N/A | Empfängt das Anwendungs/Bootstrap Objekt das über den Konstruktor übergeben wurde. |
getEnvironment() |
string |
N/A | Empfängt den Environment String der mit dem Eltern-Anwendungs/Bootstrap Objekt registriert wurde. |
getClassResources() |
array |
N/A | Empfängt eine Liste von vorhandenen Ressource Initialisierungs-Namen die in der Klasse definiert sind. Das kann für jede Implementierung speziell sein. |
bootstrap($resource = null) |
mixed |
|
Wenn |
run() |
void |
N/A | Definiert welche Anwendungslogik nach dem Bootstrapping ausgeführt wird. |
Zend_Application_Bootstrap_ResourceBootstrapper
Zend_Application_Bootstrap_ResourceBootstrapper ist ein Interface das zu Verwenden ist wenn externe Ressourcen geladen werden -- z.B. wenn ein oder mehrere Ressourcen nicht direkt in der Klasse definiert werden, sonder über Plugins. Es sollte in Verbindung mit Zend_Application_Bootstrap_Bootstrapper; verwendet werden; Zend_Application_Bootstrap_BootstrapAbstract implementiert diese Funktionalität.
Die folgenden Methoden machen zusammen die Definition des Interfaces.
| Methode | Rückgabewert | Parameter | Beschreibung |
|---|---|---|---|
registerPluginResource($resource, $options =
null) |
Zend_Application_Bootstrap_ResourceBootstrapper |
|
Registriert eine Ressource mit der Klasse, und bietet die Übergaben einer optionalen Konfiguration an diese Ressource an. |
unregisterPluginResource($resource) |
Zend_Application_Bootstrap_ResourceBootstrapper |
|
Entfernt eine Plugin Ressource von der Klasse. |
hasPluginResource($resource) |
boolean |
|
Erkennt ob eine spezifische Ressource in der Klasse registriert wurde. |
getPluginResource($resource) |
Zend_Application_Resource_Resource |
|
Empfängt die Instanz einer Plugin Ressource durch Ihren Namen. |
getPluginResourceNames() |
array |
N/A | Empfängt eine Liste aller registrierten Plugin Ressource Namen. |
setPluginLoader(Zend_Loader_PluginLoader_Interface
$loader) |
Zend_Application_Bootstrap_ResourceBootstrapper |
|
Registriert eine Instanz eines Plugin Loaders die zu verwenden ist wenn die Klassennamen eines Plugins aufgelöst werden sollen. |
getPluginLoader() |
Zend_Loader_PluginLoader_Interface | N/A | Empfängt den registrierten Plugin Loader. |
Zend_Application_Bootstrap_BootstrapAbstract
Zend_Application_Bootstrap_BootstrapAbstract ist eine abstrakte Klasse welche die Basisfunktionalität des normalen Bootstrappings bietet. Sie implementiert sowohl Zend_Application_Bootstrap_Bootstrapper als auch Zend_Application_Bootstrap_ResourceBootstrapper.
| Methode | Rückgabewert | Parameter | Beschreibung |
|---|---|---|---|
__construct($application) |
void |
|
Constructor. Akzeptiert ein einzelnes Argument, welches ein Zend_Application Objekt oder ein anderes Bootstrap Objekt sein sollte. |
setOptions(array $options) |
Zend_Application_Bootstrap_Bootstrapper |
|
Jede Option die einen passenden Setter hat wird diesen Setter aufrufen;
andernfalls wird die Option einfach für ein späteres Empfangen gespeichert.
Wenn die eigene Klasse, als Beispiel, eine
Zwei zusätzliche, spezielle Options Schnüssel können auch verwendet werden.
|
getOption() |
array |
N/A |
Gibt alle über |
hasOption($key) |
boolean |
|
Erkennt ob ein Optionsschlüssel vorhanden ist. |
getOption($key) |
mixed |
|
Empfängt den Wert der mit dem Optionsschlüssel verknüpft ist; gibt null zurück wenn keine Option mit diesem Schlüssel registriert wurde. |
setApplication(Zend_Application |
Zend_Application_Bootstrap_Bootstrapper $application) |
Zend_Application_Bootstrap_BootstrapAbstract |
|
Registriert das Eltern-Anwendungs/Bootstrap Objekt. |
getApplication() |
Zend_Application | Zend_Application_Bootstrap_Bootstrapper | N/A | Empfängt das Anwendungs/Bootstrap Objekt das über den Konstruktor übergeben wurde. |
getEnvironment() |
string |
N/A | Empfängt den Umgebungs String der mit dem Eltern-Anwendungs/Bootstrap Objekt registriert wurde. |
getClassResources() |
array |
N/A | Empfängt eine Liste von vorhandenen Ressourcen Initialisierungsnamen die in der Klasse definiert sind. Das kann von der Implementierung abhängig sein. |
getContainer() |
object |
N/A | Empfängt den Container der die Ressourcen speichert. Wenn aktuell kein Container registriert ist, wird eine Instanz von Zend_Registry registriert bevor diese retourniert wird. |
setContainer($container) |
Zend_Application_Bootstrap_BootstrapAbstract |
|
Bietet einen Container in dem Ressourcen gespeichert werden. Wenn eine Ressourcen Methode oder ein Plugin einen Wert zurückgibt, wird dieser im Container gespeichert um später empfangen werden zu können. |
hasResource($name) |
boolean |
|
Wenn eine Ressourcen-Methode oder ein Plugin einen Wert zurückgibt, wird
dieser im Ressourcen Container gespeichert (siehe
|
getResource($name) |
mixed |
|
Wenn eine Ressourcen-Methode oder ein Plugin einen Wert zurückgibt, wird
dieser im Ressourcen Container gespeichert (siehe
|
bootstrap($resource = null) |
mixed |
|
Wenn Diese Methode kann verwendet werden um individuelle Bootstraps auszuführen die entweder in der Klasse selbst definiert sind, oder über eine Ressource Plugin Klasse. Eine Ressource die in der Klasse definert ist wird bevorzugt, vor einem Ressource Plugin, ausgeführt wenn ein Namenskonflikt besteht. |
run() |
void |
N/A | Definiert welche Anwendungslogik nach dem Bootstrapping ausgeführt wird. |
__call($method, $args) |
mixed |
|
Bietet einen einfachen Weg um individuelle Ressourcen zu Bootstrappen indem
es erlaubt 'bootstrap<ResourceName>()' aufzurufen, anstatt das die
|
Zend_Application_Bootstrap_Bootstrap
Zend_Application_Bootstrap_Bootstrap ist eine konkrete
Implementation von Zend_Application_Bootstrap_BootstrapAbstract.
Dessen primäre Features sind, das es die Front Controller
Ressource registriert und das die run() Methode zuerst prüft ob
ein Standardmodul definiert ist, und dann den Front Controller ausführt.
In den meisten Fällen wird man diese Klasst für die eigenen Bedürfnisse des Bootstrappens erweitern, oder einfach diese Klasse verwenden und eine Liste von Ressource Plugins angeben die zu verwenden sind.
Zend_Application_Resource_Resource
Zend_Application_Resource_Resource ist ein Interface für Plugin Ressourcen die mit Bootstrap Klassen verwendet werden welche Zend_Application_Bootstrap_ResourceBootstrapper implementieren. Von Ressourcen Plugins wird erwartet das Sie Konfiguration erlauben, das Sie Bootstrapping erlauben, und ein Strategy Pattern für die Initialisierung der Ressource implementieren.
| Methode | Rückgabewert | Parameter | Beschreibung |
|---|---|---|---|
__construct($options = null) |
void |
|
Der Konstruktor sollte die Übergabe von Optionen erlauben mit denen der Status initialisiert wird. |
setBootstrap(Zend_Application_Bootstrap_Bootstrapper
$bootstrap)
|
Zend_Application_Resource_Resource |
|
Sollte es erlauben ein Eltern Bootstrap Objekt zu registrieren. |
getBootstrap() |
Zend_Application_Bootstrap_Bootstrapper | N/A | Empfängt die registrierte Bootstrap Instanz. |
setOptions(array $options) |
Zend_Application_Resource_Resource |
|
Setzt den Ressource Status. |
getOptions() |
array |
N/A | Empfängt registrierte Optionen. |
init() |
mixed |
N/A | Strategy Pattern: Führt die Initialisierung an der Ressource durch. |
Zend_Application_Resource_ResourceAbstract
Zend_Application_Resource_ResourceAbstract ist eine abstrakte Klasse die Zend_Application_Resource_Resource implementiert, und ist ein guter Startpunkt für die Erstellung eigener Plugin Ressourcen.
Beachte: Diese abstrakte Klasse implementiert die init() Methode nicht; das
wird der Definition in einer konkreten Erweiterung dieser Klasse vorbehalten.
| Methode | Rückgabewert | Parameter | Beschreibung |
|---|---|---|---|
__construct($options = null) |
void |
|
Der Konstruktor sollte die Übergabe von Optionen erlauben mit denen der Status initialisiert wird. |
setBootstrap(Zend_Application_Bootstrap_Bootstrapper
$bootstrap)
|
Zend_Application_Resource_Resource |
|
Sollte es erlauben das Parent Bootstrap Objekt zu registrieren. |
getBootstrap() |
Zend_Application_Bootstrap_Bootstrapper | N/A | Empfange die registrierte Bootstrap Instanz. |
setOptions(array $options) |
Zend_Application_Resource_Resource |
|
Set resource state. |
getOptions() |
array |
N/A | Empfangen der registrierten Optionen. |
| Beispiele |
