Wie kann ich ein Webframework für PHP wählen?

php_framework

Was ist ein Webframework für PHP? 

Mit einer auf einem Webserver installierten Programmiersprache kannst du die Funktionalität für deine Webseite direkt programmieren. Das ist allerdings deshalb ziemlich aufwendig, weil du alle immer wieder vorkommenden Funktionen neu umsetzen musst.

Für PHP wie für andere serverseitige Programmiersprachen gibt es deshalb Webframeworks, mit denen die Entwicklung einer dynamischen Webseite viel schneller und einfacher möglich ist. Programmbausteine, vorgefertigte Klassen und wiederverwertbarer Code wird dir von diesen Webframeworks zur Verfügung gestellt.
Auf diese Weise hast du Zugang zu Funktionen wie der Authentifizierung deiner Benutzer, der Verwendung von Standortdaten, Webformularen zum Ausfüllen, Versand von e-mails und besonders auch Zugriff auf Datenbanken.

Welches Webframework ist nun das beste für mich?

Das hängt von deinen besonderen Anforderungen ab. Hier stellen wir dir einige Webframeworks für PHP vor und geben dir Hinweise auf ihre besonderen Stärken. Für die Auswahl solltest du nicht nur deine jetzigen, sondern alle zu erwartenden Anwendungen berücksichtigen. Eine detailliertere Besprechung der Kriterien findest du auf der Webseite des Webframeworks Symfony.

Zend

Voraussetzung für die Verwendung dieses Webframeworks ist PHP 5.3. Die Funktionaliät in Zend ist objektorientiert umgesetzt. Die neueren Versionen überzeugen mit höherer Geschwindigkeit.

Vor kurzem wurde der Name Zend in Laminas geändert. Das reflektiert die Tatsache, dass das Webframework jetzt nicht mehr von einer Firma, sondern von einem technischen Organisationskomitee weiterentwickelt wird. Besonders geeignet ist es für Geschäftsanwendungen wie e-Commerce, CMS, Messenger Anwendungen und auch Unterhaltungsplattformen.
Zend wird unter der New BSD-Licence vertrieben, was sowohl quell offene als auch proprietäre Webapplikationen zulässt.

Phalcon

Dieses Webframework unter der Standard BSD Lizenz erzeugt zwar auch Code in PHP, ist selbst aber nicht in dieser Sprache, sondern in der Programmiersprache C geschrieben. Wie zu erwarten ermöglicht das eine besonders hohe Geschwindigkeit. Zusätzlich zur Wahl der Sprache wird dieser Effekt auch dadurch erreicht, dass Phalcon ständig im Arbeitsspeicher resident ist. Für Webapplikationen mit hohen Anforderungen an Performance ist Phalcon deshalb eine vielversprechende Möglichkeit.

Symfony

Dieses Webframework unter der MIT Lizenz setzt PHP in der Version 5.3 voraus und ist wie die meisten Webframeworks nach dem Software Entwurfsmuster Model-View-Controlller aufgebaut.

Siehe auch  Lohnen sich Smartphone-Tarife unter 5 Euro?

Das Model stellt Werkzeuge für objektrelationale Abbildungen bereit, mit denen PHP Objekte in einer relationalen Datenbank gespeichert werden können. Der Controller legt die Logik der Abläufe fest, während die Präsentationsschicht View die Ergebnisse in verschiedenen Formaten präsentiert.

Symfony besteht aus Modulen, die unabhängig voneinander lauffähig sind. Das Webframework besticht durch besondere Interoperabilität, die sich auch durch die Verwendung externer Softwarekomponenten in Symfony selbst zeigt. Als Benutzer erwartet dich auch eine besonders gut gestaltete Webseite des Webframeworks.

Yii

Die Entwickler dieses unter der New BSD License zur Verfügung gestellten Webframeworks legen besonderen Wert auf wenig Overhead und daher Effizienz und Performance.

Drupal

Dieses Softwarepaket wurde unter der GPL Lizenz veröffentlicht und ist besser als Content Management System bekannt. erfüllt aber auch die Funktionalität eines kompletten Webframeworks. Es besteht aus einem gemeinsamen Core, der durch zusätzliche Module erweitert werden kann. Diese Module können auch von externen Entwicklern stammen und stehen deshalb in enormer Zahl zur Auswahl.