PHP-Framework: Symfony 3.3 bringt etliche Änderungen

Die Neuerungen des belebten Frameworks finden sich in Bereichen wie Cache, Console, Profiler, Dependeny Injection und Komponenten.

In Pocket speichern vorlesen Druckansicht
PHP-Framework: Symfony 3.3 bringt etliche Änderungen
Lesezeit: 2 Min.
Von
  • Alexander Neumann

Die Symfony-Entwickler kommen der Anforderung nach, im möglichst halbjährlichen Turnus ein neues Release des PHP-Frameworks zu veröffentlichen. Nach der Freigabe der Version 3.2 im Dezember 2016 ist nun Symfony 3.3 mit einigen Neuerungen erschienen. Das Framework steht unter der MIT-Lizenz auf GitHub zur Verfügung. Das Projekt kommt unter anderem in Drupal zum Einsatz.

Die Neuerungen lassen sich grob den Bereichen Cache, Console, Profiler, Dependency Injection und Komponenten zuordnen. Auf "deprecated" ("veraltet") wurde zum Beispiel der Befehl cache:clear gesetzt. Er funktionierte nicht zuverlässig während des sogenannten Cache Warm-up. Neu ist darüber hinaus eine Implementierung der PHP Standards Recommendation "Common Interface for Caching Libraries" (PSR-16), eine offenbar einfachere Cache-Funktion zum Speichern, Abrufen und Entfernen von Dingen, die im Cache zu finden sind. Außerdem gibt es einen neuen Adapter für den Cache-Server Memcached.

Mit Symfony 3.3 gibt es nun für Console-Befehle ein automatisches Logging der Exceptions. Neu ist zudem das ConsoleEvents::ERROR-Event eingeführt, es soll das als "deprecated" markierte ConsoleEvents::EXCEPTION ersetzen. Die Profilerkonfiguration umfasst etliche Überarbeitungen, darunter aussagekräftigere Informationen. Die Dependency-Injection-Komponente wird im neuen Symfony erweitert: So können Entwickler nun auch Config-Dateien mit Glob-Patterns importieren.

Bei den Komponenten gibt es Neuzugänge zu verzeichnen, man muss sich aber auch von anderen so langsam verabschieden. Neu sind WebLink für die Verwaltung von Links zwischen Ressourcen und die Dotenv-Komponente, mit der sich .env-Dateien parsen lassen, um Zugriff auf darin gespeicherte Umgebungsvariablen in der Applikation zu erhalten. Nach fünf Jahren heißt es nun, sich von der ClassLoader-Komponente zu verabschieden, die ebenfalls "deprecated" gesetzt wurde. Andere Komponenten wie der für Workflows, Routing oder Security haben Verbesserungen erhalten. (ane)