Ralf Eggert Travello GmbH

Jeder Entwickler hat andere Entscheidungskriterien und eventuell auch technische Vorgaben zu erfüllen – und danach richtet sich auch die Wahl des Routers.

Die Dominanz der PHP-Frameworksilos neigt sich dem Ende zu. Auch dank der immer noch steigenden Verbreitung des Composers wird es für PHP-Entwickler immer leichter, sich aus vielen verschiedenen Bausteinen und Paketen ein eigenes Framework zusammenzustellen. Dieser Artikel bietet einen Überblick über einige PHP-Router, die als sinnvolle Alternativen bereitstehen.

Früher, in der guten alten Zeit, boten die PHP-Fullstack-Frameworks für jedes Problem in der Webentwicklung ihre eigenen Lösungen. Diese Frameworksilos waren ein geschlossenes Ökosystem, auch wenn externe Pakete wie Doctrine oder die ein oder andere Template-Engine zusätzlich eingebunden werden konnten. Doch für elementare Aspekte wie die Modellierung von HTTP-Anfragen und -Antworten oder das Routing stellten die meisten PHP-Frameworks ihre eigenen Lösungen bereit. Das ist heute zwar immer noch so, aber die Zeiten haben sich mittlerweile geändert.

Damals war es meist etwas aufwendig, externe Pakete in ein Projekt zu integrieren. Oftmals gab es nur die Möglichkeit, das Paket herunterzuladen, zu entpacken, in einem Ordner abzulegen und ins Autoloading zu integrieren. Gab es eine neue Version, begann das Spiel von vorne. Es ist nun etwas mehr als fünf Jahre her, dass die erste Version von Composer veröffentlicht wurde. Seitdem ist es kein Problem mehr, mithilfe des Composers Abhängigkeiten zu installieren und auch aktuell zu halten.

Ein weiterer Aspekt, der zur Öffnung der geschlossenen PHP-Frameworkökosysteme beitrug, war die Gründung der PHP-FIG im Jahr 2009. In der PHP Framework Interoperability Group sitzen Vertreter aller namhaften PHP-Frameworks und weiterer PHP-Open-Source-Projekte wie Composer, Drupal, Joomla!, Magento oder SugarCRM. Die Gruppe hat es sich zum Ziel gesetzt, für die PHP-Welt Standards für die Entwicklung zu etablieren. Lag der Fokus in der Anfangszeit überwiegend auf Autoloading und Coding Styles, wurden in den letzten Jahren immer öfter auch Standards in Form von Interfaces geschaffen. So gibt es mittlerweile verabschiedete Interfaces für das Logging, das Caching und die Modellierung von HTTP Messages; weitere Interfaces sind in Arbeit. Anfang 2016 beeilten sich etwa viele PHP-Frameworks, den PSR-7-Standard für die HTTP Requests und Responses in ihren Frameworks zu implementieren.

Durch diese neue Offenheit sollten PHP-Entwickler auch mal über den Tellerrand schauen und auch mal Neues ausprobieren. In diesem Artikel werfen wir einen Blick auf verschiedene Routing-Lösungen, die in den letzten Jahren als Alternativen zu den etablierten Routern der einzelnen PHP-Frameworks entstanden sind. Im Einzelnen sind dies:

  • Aura.Router
  • FastRoute
  • klein.php
  • Pux

Den vollständigen Artikel lesen Sie in der Ausgabe:

PHP Magazin 5.17 - "Sail away!"

Alle Infos zum Heft
579805306PHP-Router: Aura.Router, FastRoute, klein.php oder Pux?
X
- Gib Deinen Standort ein -
- or -