PHP 8.4 ist veröffentlicht

Bewertung [ Bewertung abgeben ] Artikel geschrieben am 04.12.2024 um 21:37 Uhr, aktualisiert am 07.12.2024, um 13:52 Uhr.

Pünktlich Ende November wurde PHP 8.4 veröffentlicht und es gibt wieder massig Änderungen. Inzwischen sind Webentwickler die neue dynamik gewohnt, trotz allem stellt es oft auch lange (und meist ältere) Projekte vor eine Herausforderung. Trotz der Nachteile sind die Neuerungen einen weiteren Schritt auf dem Weg von einer Sprache für (kleine) Homepages hin zu einem mächtigen Werkzeug in allerlei Gebieten. Schauen wir uns grob die größten und relevantesten - zumindest in der Allgemeinheit - Änderungen an.

Abgesehen von Neuem gibt es allerdings auch alte Zöpfe, die weiterhin konsequent abgetrennt werden. Neben der Erweiterung für Oracle Datenbanken (OCI8) trifft es die ältere PSpell-Erweiterung und die wohl deutlich häufiger verwendete IMAP-Bibliothek. Während PSpell vermutlich weniger Verwendung findet, wird es sicherlich einige Webseiten geben, die Funktionalitäten mit der IMAP-Erweiterung implementiert haben. Das diese seit 2018 keine Updates mehr erhalten hat und auch in anderen Bereichen nicht mehr unbedingt state-of-the-art war, macht diesen Schritt zwar nachvollziehbar, dennoch muss man eine entsprechende Alternative finden.

Im PHP Core gibt es für PSpell mit Enchant bereits einen adäquaten Ersatz. Für IMAP muss man dagegen schon auf ein unabhängiges Projekt wie Webklex/php-imap (GitHub) zurückgreifen. Da ich persönlich eine alte Webseite bereits umstellen musste, kann ich aus Erfahrung nur sagen, dass dieser Schritt längst überfällig war! Wenn etwas vorhanden ist, arbeitet man gerne damit, bevor man sich zu vielen Abhängigkeiten aussetzt. Das ist generell keine schlechte Eigenschaft, allerdings sorgt es meist auch für blinden Code und wer bereits mit der Erweiterung gearbeitet hat, wird das mit sicherheit nachvollziehen können.
Zudem ist die Dokumentation von diesem Projekt absolut hervorragend, der Code ist übersichtlicher, objektorientiert und viele komplizierten Prozesse sind kompakt zur Verfügung gestellt. In meiner alten Implementierung habe ich eine eigene Klasse erstellt, die mir E-Mails parst und die eigenen Eigenschaften leicht zugänglich macht. Im deutschsprachigen Raum dauert es nicht lange um auf die Besonderheiten aufmerksam zu werden, die ein Betreff mit Umlauten mit sich bringt. Interessanterweise wird in diesem Projekt der Betreff nicht entsprechend demaskiert. Dafür hat man wenig(er) Aufwand den Code zu pflegen. Im Großen und Ganzen für die Zukunft sicherlich ein Zugewinn und vermutlich werden einige Projekte durch die Änderung auch deutlichen Aufschwung erhalten.

Zusammenfassend ist das Release wieder erwartungsgemäß und keine Ausnahme. Es gibt deutliche Änderungen, die je nach Projekt und Größe diverse Auswirkungen und Seiteneffekte haben können. Zusammen mit dem deutlich kürzeren Zyklus und Security-Patches und den vielen Hosting-Betreibern, denen die Pflege der älteren Pakete zunehmend ebenfalls schwer fällt bzw. schlicht zu viel Aufwand bedeutet, ist eine genauere Analyse unabdingbar. Es kann sich zunehmend lohnen Tools zur Code-Analyse in seinen Alltag einzubinden, selbst wenn das in der Vergangenheit nicht zwingend erforderlich war.