Interactive PHP-Shell & Zend Framework
- Collaboration-Software%
- Enterprise Portals%
- Lifecycle-Management%
- Interface-Design%
- Web Applications100%
In den Sprachen Ruby, mit irb, und Python ist eine interaktive Shell bereits ein fester Bestandteil der Sprache. Nicht nur neue Entwickler schätzen diese um gerade Erlerntes auszuprobieren, auch beim Debuggen ergibt sich durch die Shell neue Herangehensweisen.
In PHP gibt es zwar auch die Möglichkeit mit
php --interactive
den Interpreter in einem ähnlichen Modus zu betreiben, doch dieser ist im Komfort weit der Konkurrenz hinterher.
Zwar bietet diese zumindest eine Bash ähnliche History, zumindest wenn readline support aktiviert ist, doch nur eine sehr eingeschränktes Autocompletion und Error Handling.
Abhilfe schafft hier ein OpenSource-Projekt: Die PHP-Shell realisiert dank Reflection-API auch Autocompletion für eigene Objekte. Desweiteren glänzt es mit einem verbesserten ErrorHandling, das ein regelmäßiges Abbrechen der Shell verhindert.
Um die PHP-Shell selbst zu testen, kann man sie sich direkt von der Projektseite des Autors herunterladen oder via pear installieren:
sudo pear install http://jan.kneschke.de/assets/2007/2/17/PHP_Shell-0.3.1.tgz
Danach startet man sie einfach in der Konsole durch Aufruf von php-shell.sh.
Um zum Beispiel das Zend-Framework einzubinden, empfiehlt es sich den Zend Autoloader zu registrieren:
// wenn Zend im Ordner library liegt, sonst anpassen
set_include_path ('library'. PATH_SEPARATOR.get_include_path());
require_once 'Zend/Loader.php';
spl_autoload_register(array('Zend_Loader', 'autoload'));
Nun erzeugt zum Beispiel ein Aufruf von
$date = new Zend_Date
eine Instanz der Klasse Zend_Date, ohne jegliche weitere include- oder require-Statements.
Viel Spaß beim Ausprobieren!
Informationen
Autor:
Dominik Borsbors [at] taktsoft [dot] com
