URL dieses Artikels:

zu Ausgabe: 03.2003
Dev.Talk
Die Welt ist im Wandel. Ich fühle es im Wasser, ich fühle es in der Erde und ich rieche es in der Luft.
von Sebastian Bergmann


Diese Worte aus dem Prolog der Kinofassung von John Ronald Reuel Tolkiens Der Herr der Ringe gelten wahrlich auch für die PHP-Welt zu Beginn des Jahres 2003. Diese Welt befindet sich im Wandel, die nächste große Version, PHP 5, wirft ihre Schatten voraus und schickt sich an, die PHP-Plattform zu revolutionieren.
Am 9. Januar 2003 wurde gegen Mittag (um 11:03 Uhr, um genau zu sein) die Version des CVS Repositories auf PHP 5.0.0-dev geändert und damit die heiße Phase der Arbeit an der kommenden PHP-Version eingeläutet. Die Zend Engine 2, die das Herzstück von PHP 5 bilden wird, hat nun fast den Status der feature completeness erreicht, weitere Arbeiten an ihr konzentrieren sich nun auf Optimierung und Qualitätssicherung. Mit der Umstellung der Versionsnummer einher ging daher auch der Wechsel von der Zend Engine 1 zur neuen Zend Engine 2, sodass nunmehr das gesamte PHP Development Team täglich an und mit der Zend Engine 2 arbeitet, was vorher nur eine kleine Gruppe von Entwicklern getan hatte.

Abstrakte Datentypen
Sterling Hughes hat eine erste Alphaversion seiner Abstract Data Types (ADT)-Erweiterung für PHP freigegeben. Abstrakte Datentypen wie beispielsweise Bäume und Graphen benötigt man bei der Realisierung von verschachtelten HTML-Menüs ebenso wie für die Umsetzung von Algorithmen. Bislang musste man als PHP-Programmierer auf PHP-Implementierungen dieser Datenstrukturen zurückgreifen, was in Bezug auf Speicher- und Zeitaufwand schon mal Probleme bereiten kann. Die ADT-Erweiterung gibt dem PHP-Programmierer nun C-Implementierungen der Datenstrukturen Baum (mit AVL und Binärbaum-Ausprägungen), Graph, Heap, Set, Stack und Queue an die Hand, die eine effektive Umsetzung der genannten Anwendungen erlauben und sowohl prozedural als auch objektorientiert verwendet werden können. Die ADT-Erweiterung wird Bestandteil von PHP 5 sein und wahrscheinlich auch standardmäßig aktiviert sein.

Abstraktionslayer für Remote Procedure Calls (RPC)
Zu den ersten Arbeiten für PHP 5, einmal abgesehen von der Integration der Zend Engine 2, gehört die Umstrukturierung der diversen PHP-Erweiterungen für Remote Procedure Calls (RPC) unter Verwendung eines gemeinsamen Abstraktionslayers. Dieser Abstraktionslayer, der von Harald Radi entworfen und implementiert wurde, erleichtert die Wartbarkeit des PHP Source Trees. Die beiden ersten PHP-Erweiterungen, die hierfür angepasst wurden, sind die für die Microsoft COM und Java verantwortlichen.

Xdebug und Weaverslave
Derick Rethans arbeitet derzeit an Version 1.2.0 seiner Xdebug genannten Debugging-Erweiterung für PHP. Neben der Unterstützung für die Zend Engine 2 und damit für PHP 5 wird die neue Version die von GDB bekannten Funktionen sowie Profilingfähigkeiten bieten.
Thomas Weinert, der Entwickler des beliebten Editors Weaverslave, kündigte derweil an, dass er für Weaverslave an einem neuen Debugging und Profiling auf Basis der Xdebug-Erweiterung arbeitet.

coWiki - erste PHP 5-Applikation
Mit seiner Web Collaboration Software coWiki hat der Entwickler Daniel T. Gorski die wahrscheinlich erste PHP-Applikation vorgestellt, die die neuen objektorientierten Sprachfeatures von PHP 5 ausnutzt.
coWiki ist ein sauber programmiertes, modular aufgebautes, Template-basiertes und multilinguales System zur Zusammentragung, Organisation und Publikation von Wissen. So erlaubt es beispielsweise die einfache Erstellung von Textmanagementsystemen, Wissensbasen, Inter- und Intranetanwendungen wie zum Beispiel ein Weblog.
coWiki ist unter der GNU General Public License (GPL) als Open Source-Software von der Website des Autors zu beziehen.
Sebastian Bergmann studiert Informatik in Bonn und ist aktives Mitglied der internationalen PHP-Entwicklergemeinde. In seiner Kolumne Dev.Talk berichtet er für die Leser des PHP Magazins über die aktuellen Entwicklungen rund um PHP.

© 2004 Software & Support Verlag GmbH. Vervielfältigung nur mit Genehmigung des Verlags. Fragen?