Das Zend Framework – Ein Startversuch

Nun endlich möchte ich mir das Zend Framework genauer ansehen. Auf der Homepage kann man sich den Zend Server Community Edition herunterladen, der alles beinhaltet was benötigt wird (Webserver, Zend Framework, Verwaltungsoberfläche). Das ist sehr komfortabel und funktioniert auch sofort. Da ich bereits XAMPP zur lokalen Entwicklung nutze, möchte ich nur das Framework verwenden. Im Download-Bereich lade ich mir die Zip-Datei herunter. Dazu benötigt man einen gültigen Login. Anschließend entpacke ich die Dateien und kopiere die Dateien in ein Testprojekt. Schnell noch einen vhosts-Eintrag anlegen und die Windows hosts Datei anpassen und den Apache neustarten, dann ist bereits die Basis vorhanden.

<VirtualHost *:80>
    ServerAdmin mymail@adres.se
    DocumentRoot "C:/wwwroot/zend_test"
    ServerName zendtest.local   
   <Directory "C:/wwwroot/zend_test">
        Options Indexes FollowSymLinks Includes +ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Im Quick-Start-Tutorial auf der Zend-Seite sind alle weiterenSchritte ausführlich beschrieben. Damit unter PHP das Framework gefunden werden kann, muß man den include_path in der php.ini korrekt setzen. Bei mir sieht das exemplarisch so aus:

include_path = ".;\xampp\php\PEAR;\wwwroot\zend_test\zend\library"

Außerdem muß man den Windows Path anpassen, damit man in der Konsole den Befehl zf ausführen kann:

...;C:\xampp\php;C:\wwwroot\zend_test\zend\bin

Anschließend wechsle ich in der Windows Konsole (cmd) in das Verzeichnis meines Testprojekts und erzeuge ein Grundgerüst mit Hilfe des zf Tools:

zf create project test

Die erzeugte Struktur sieht nun bei mir in Eclipse folgendermaßen aus:

Beispielstruktur eines Zend Testprojekts

Rufe ich nun die Url im Browser auf, erhalte ich bereits folgende Ansicht:

Zend Welcome Darstellung

Fazit: Die Installation funktioniert genauso, wie im Zend Tutorial beschrieben. Dafür gibts bereits dicke Pluspunkte. Mal sehen, auf was für Problem ich bei einem kleinen Testprojekt stoße.

PHP-Warning abfangen

Man sollte potenzielle Warning-Kandidaten wie z. B. file_get_contents nicht mit dem @-Operator unterdrücken (das @ unterdrückt alle Fehlermeldungen), sondern sollte das so lösen, wie es auch im Zend-Framework gemacht wird:

set_error_handler('handleError');
file_get_contents($url);
restore_error_handler();

Das kann natürlich auch ein Errorhandler innerhalb einer Klasse sein. Der Handler selbst kann in rudimentärer Form so aussehen:

function handleError($errno, $errstr, $errfile, $errline, array $errcontext)
{
  // error was suppressed with the @-operator
  if (0 === error_reporting())
    return false;
  throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
}

Nun hat man den Vorteil, dass man mit einem try-catch-Block flexibler reagieren.

Ant unter Windows 7 installieren

  1. Auf der Ant-Homepage die aktuelle Ant-Version herunterladen (zip-File).
  2. Den Download nach c:\ant entpacken.
  3. Die PATH-Umgebungsvariable um den Eintrag c:\ant\bin ergänzen (mit Semikolon anhängen).
  4. Neue Umgebungsvariable anlegen: ANT_HOME auf C:\ant setzen.
  5. Neue Umgebungsvariable anlegen: ANT_OPTS auf -Xmx256M setzen.

Nun können wir die Installation mit dem Befehl ant -version in der Windows Konsole testen. Sollte folgende Fehlermeldung auftauchen: “Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre7\lib\tools.jar Buildfile: build.xml does not exist! Build failed“, dann bitte im Java-Verzeichnis kurz prüfen, ob diese jar fehlt und ggf. das Java JDK nachinstallieren. Anschließend eine weitere Umgebungsvariable JAVA_HOME anlegen und dort den Wert korrekten Pfad hinterlegen (z. B. C:\Program Files\Java\jdk1.6.0_25) hinterlegen.

Nun sollte korrekterweise in der Konsole folgende Ausgabe erscheinen: “ant -version
Apache Ant(TM) version 1.8.2 compiled on December 20 2010