Außerdem: Exception-Handling und Error-Classes in PHP

Fast Forward Spezial: PHP-Performance steigern, Laravel Middleware verstehen & Eloquent mit Zend Expressive
Keine Kommentare

Auf zu einer neuen Runde des Fast Forward Spezials, die diesmal ganz im Zeichen von PHP und passenden Tools steht. Dabei geht es etwa um die sinnvolle Gestaltung von Garbage Collection, Exception Handling und Error-Classes in PHP und die richtige Nutzung von Laravel Middleware. Außerdem zeigen wir, wie sich unnötige Komplexität in Zend Framework vermeiden und wie sich Eloquent als Datenbank mit Zend Expressive nutzen lässt.

Müll richtig entsorgen & die Performance in PHP steigern

Das schönste UI ist nichts wert, wenn die (nicht vorhandene) Performance den Nutzer vertreibt. Nun kann man über die Grenzen des Zumutbaren mit Sicherheit streiten; insgesamt gilt aber doch, dass die allermeisten Anwendungen von einer verbesserten Performance profitieren. Wer mit PHP arbeitet, sollte dabei mal über die Session Garbage Collection nachdenken – muss das wirklich immer sein, wenn session_start() aufgerufen wird? Diese Frage beantwortet Benjamin Eberlei mit einem klaren nein und erklärt, wie sich die Garbage Collection sinnvoller gestalten und somit die Performance verbessern lässt.

Exception-Handling und Error-Classes in PHP

Das Exception-Handling hat zum Ziel, Code auch in Ausnahmesituationen vor Problemen zu schützen. Mit PHP 7 wurden zwei neue Klassen eingeführt, die dem Entwickler die Fehlerbehandlung einfach machen sollen: Die Throwable-Class und die Error-Class, die die unterschiedlichen Fehlertypen beschreiben. Das können Fatal-Errors oder Type-Errors sein. Die Error-Class ist in vier Unterklassen eingeteilt: ArithmeticError, TypeError, ParseError und AssertionError. Vor PHP 7 wurden Exception-Error-Classes geschrieben, um mit den unterschiedlichen Fehlertypen umzugehen. Ahmed Khan veranschaulicht in einem Crash-Course, was sich beim Exception-Handling verändert hat und auf was zu achten ist, wenn man entweder mit PHP 7 oder noch mit älteren Versionen arbeiten sollte.

Unnötige Komplexität in Zend Framework vermeiden

Das Zend Framework ist unheimlich flexibel. Das ist toll, kann aber auch zu richtig viel Stress führen, wenn man die daraus entstehenden Möglichkeiten falsch nutzt. Das weiß Matthew Setter aus eigener Erfahrung mit einem Projekt, zu dem auf einmal eine vollkommen unübersichtliche Zahl an Configurations gehörte. Dagegen helfen die ConfigProvider-Klassen in PHP, die ohne Inheritance-Hierarchy auskommen. Sie geben ein Array aus, das Konfigurations-Optionen zur Verfügung stellt, die dann weiterverwendet werden können. Wie man mit ConfigProvider arbeitet, erklärt Matthew Setter in seinem Tutorial.

Eloquent als Datenbank mit Zend Expressive verwenden

Fast Forward Spezial im Überblick

Alle Beiträge aus unserer Reihe Fast Forward Spezial finden sich hier.

Matthew Setter hat einfach mal was anderes ausprobiert: Statt immer mit Zend\Db zu arbeiten, hat er einfach mal Eloquent als Datenbank für ein Zend-Expressive-Projekt verwendet. Wie man Eloquent als Datenbank installiert, konfiguriert und damit arbeitet und ob sich der Aufwand überhaupt lohnt, kann man in seiner Anleitung nachlesen.

Laravel Middleware verstehen

HTTP Middleware filtert HTTP Requests, beispielsweise um die Sprachversion einer Website an den Aufenthaltsort des Users anzupassen, zur Bestätigung von API-Keys oder zum Aufspüren von Bot-Traffic. Das ist auch in Laravel möglich. Samuel Oloruntoba zeigt am Beispiel von Middleware zur User-Authentifizierung Schritt für Schritt, dass das nicht einmal schwer ist. Wer also noch nie mit Middleware gearbeitet hat und Laravel verwendet, ist bei seinem Tutorial richtig!

Unsere Redaktion empfiehlt:

Relevante Beiträge

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
X
- Gib Deinen Standort ein -
- or -