Zend Tool im Zend Studio 7

Die Pflege eines Projekts, welches mit Hilfe des Zend Framework erstellt wird, ist von Hand schon ziemlich lästig. Möchte man beispielsweise einen neuen Controller anlegen, muss man eine entsprechende PHP-Datei und eine Datei für den dazugehörigen View erzeugen. Noch umständlicher wird es, wenn man ein neues Modul anlegen muss, da hier diverse Verzeichnisse zu erzeugen sind. Alles lästige Aufgaben im Filesystem.

Das Zend Studio hilft diese Aufgabe etwas bequemer zu erledigen. Seit der Version 1.8 des Zend Frameworks gibt es das Projekt “Zend Tool” mit desse Hilfe man über die Kommandozeile ein entsprechendes Projekt verwalten kann. In Verbindung mit dem Zend Server wird diese Option zudem automatisch mit installiert, ohne das ein manuelle Konfiguration nötig ist.

Was vielleicht nicht jeder weiß ist, dass man mit dem Zend Studio 7 das “Zend Tool” über das Menü “Project → Zend Tool” direkt aufrufen kann. Noch einfacher über die Tastenkombination “CTRL+2“, worauf sich das folgende Fenster öffnet.

Integrierte Kommandozeile zum Zend Tool

Integrierte Kommandozeile zum Zend Tool

Hier kann man nun mit entsprechenden Eingaben die gewünschten Aktionen ausführen. Für manche Optionen wird eine Hilfe mit kurzer Beschreibung eingeblendet. Zahlreiche Möglichkeiten sind bisher noch nicht dokumentiert oder funktionieren derzeit nicht. Im folgenden beschreibe ich einige der wichtigsten Befehle für das schnelle Arbeiten mit dem Zend Framework.

zf create project PROJEKTNAME

Mit diesem Befehl wird ein neues Projekt im aktuellen Arbeitsbereich erstellt. Dabei werden die Standardverzeichnisse und -dateien eines typischen Zend Framework Projekts anglegt:


├───application
│   │   Bootstrap.php
│   │
│   ├───configs
│   │       application.ini
│   │
│   ├───controllers
│   │       ErrorController.php
│   │       IndexController.php
│   │
│   ├───models
│   └───views
│       ├───helpers
│       └───scripts
│           ├───error
│           │       error.phtml
│           │
│           └───index
│                   index.phtml
│
├───library
├───public
│       .htaccess
│       index.php
│
└───tests
    │   phpunit.xml
    │
    ├───application
    │       bootstrap.php
    │
    └───library
            bootstrap.php

Das alles will man sicher nicht von Hand anlegen ;o) Für die weitere Arbeit müssen Sie in das aktuelle Projekt mit dem Befehl cd PROJEKTNAME wechseln. Dies wird mit der Meldung context was set to /PROJEKTNAME bestätigt.

zf create controller CONTROLLERNAME

Hiermit wird ein neuer Controller, die dazugehörige View sowie eine Test-Datei im aktuellen Projekt erzeugt. Ein Auszug aus der daraus resultierenden Verzeichnisstruktur soll dies verdeutlichen:


│   ├───controllers
│   │       TestController.php
│   └───views
│       └───scripts
│           ├───test
│           │       test.phtml
│
└───tests
    ├───application
    │   └───controllers
    │           TestControllerTest.php

Der neue Controller kann anschließend sofort ausgeführt werden, da eine leere Index-Action mit angelegt wird. Die entsprechende View wird per Default mit folgendem Inhalte gefüllt:

<br /><br /><center>View script for controller <b>Test</b> and script/action name <b>index</b></center>

Warum dazu das veraltete und in XHTML nicht mehr vorhandene center-Tag verwendet weiß ich nicht. Da hätte man dann auch gleich das blink-Tag wieder aufleben lassen können ;o)

zf add action ACTIONNAME CONTROLLERNAME

Dieser Befehl erzeugt eine neue Action im referenzierten Controller und legt zugleich ein entsprechendes Template im View-Ordner an. Der Inhalt des Controllers stellt sich anschließend wie folgt dar:

<?php

class TestController extends Zend_Controller_Action
{

    public function init()
    {
        /* Initialize action controller here */
    }

    public function indexAction()
    {
        // action body
    }

    public function ACTIONNAMEAction()
    {
        // action body
    }

}

Dieser Befehl muss für jede weitere Action erneut ausgeführt werden. Dabei fügt “Zend Tool” die entsprechende Method jeweils ans Ende im angegebenen Controller ein.

zf create view ACTIONNAME VIEWNAME

Mit dieser Angabe erstellen Sie ein View ohne zugleich einen Controller anzulegen.

zf create module MODULLNAME

Dieser Befehl erzeugt ein neues Modul im Verzeichnis /modules mit der folgenden Verzeichnisstruktur:


│   ├───modules
│   │   ├───Test
│   │   │   ├───controllers
│   │   │   ├───models
│   │   │   └───views
│   │   │       ├───filters
│   │   │       ├───helpers
│   │   │       └───scripts

Falls das Verzeichnis /modules bisher nicht vorhanden war, wird es beim ersten Aufruf des Befehls mit angelegt.

Anmerkung

Das waren aus meiner Sicht die wichtigsten und zugleich nützlichsten Befehle, welche in der aktuellen Version von “Zend Tool” angeboten werden. Die weitere Entwicklung zu diesem praktischen Werkzeug sollte man auf jeden Fall im Auge behalten. Die Supportseite für das “Zend Tool” findet man unter der URL http://framework.zend.com/issues/browse/ZF-6571.

Kommentieren