ubuntuusers.de

Migration von Zend Framework zu Laminas

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist mit keiner aktuell unterstützten Ubuntu-Version getestet! Bitte teste diesen Artikel für eine Ubuntu-Version, welche aktuell unterstützt wird. Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Das Zend Framework (ZF) gab es seit 2005 und wurde gesponsert von der Firma Zend, die auch die Zend Engine, den Compiler von PHP, maßgeblich mit entwickelt. 2019 wurde entschieden, dass das Framework nicht mehr von der Firma Zend betreut wird. Vielmehr soll das Sponsoring und Weiterentwicklung jetzt unter dem Dach der Linux Foundation 🇬🇧 herstellerneutral und weiterhin als Open Source (New BSD License) geschehen. Im Zuge dessen gab es auch eine Namensänderung. Das Framework heißt jetzt seit Anfang 2020 Laminas.[3] Außer der Namensänderung gab es aus der Sicht eines PHP-Entwicklers bisher keine großartigen Veränderungen, so dass jemand, der mit ZF vertraut ist, sich mühelos in Laminas zurecht finden kann.

Zwar gibt es die alten ZF-Pakete noch auf Github. Dies sind jedoch archiviert und sollten daher tunlichst nicht mehr verwendet werden. Eine Migration bestehender ZF-Installationen auf Laminas ist die empfohlene Vorgehensweise. Die Umstellung auf Laminas ist jedoch erstaunlich einfach und schnell zu bewerkstelligen.

Achtung!

Die Weiterentwicklung von Laminas-MVC wurde eingestellt. Laut einem offiziellen Laminas-Blog-Eintrages🇬🇧 gibt es bis Ende 2028 zwar noch Sicherheitsupdates, aber keine Bugfixes oder neue Features mehr. Das Team von Laminas betont, dass Mezzio 🇬🇧 aktiv weiterentwickelt werde und als Alternative zu Laminas-MVC gilt. Auch die meisten Komponenten werden weiter weiterentwickelt. Es wird empfohlen, neue Projekte gleich mit Mezzio zu erstellen.

Vorbereitung

Richtige Composer-Version

Am einfachsten geht die Migration mithilfe von Composer.[2] Es wird die Composerversion 1.7.0 oder höher benötigt, was seit Ubuntu 19.04 erfüllt wird. Eine Anleitung zum manuellen Installieren der neusten Version von Composer gibt es unter Composer (Abschnitt „Manuelle-Installation“).

Die installierte Version lässt sich so ermitteln:

composer --version 

Laminas Migrationstool installieren

Systemweit

Systemweit, genauer gesagt für ein Ubuntu-Benutzerkonto, sind folgende Schritte (ohne Rootrechte) erforderlich:

composer global require laminas/laminas-migration 

Damit das Tool ohne Pfadangabe genutzt werden kann, kann man es der Datei ~/.profile hinzufügen. Dazu diese Zeile in einem Editor hinzufügen:

1
export PATH="$HOME/.composer/vendor/laminas/laminas-migration/bin:$PATH"

Manuell

Natürlich kann man das Tool auch mit dem absoluten Pfad aufrufen, wenn man eine sytemweite Installation nicht wünscht. Dazu laminas-migration in einem beliebigen Verzeichnis folgendermaßen installieren:

composer require laminas/laminas-migration 

Ein Projekt umstellen

Achtung!

Bevor ein ZF-Projekt auf Laminas umgestellt wird, sollte eine vollständige Sicherheitskopie aller Dateien im Projektverzeichnis in ein separates Verzeichnis erstellt werden, um Datenverlust zu vermeiden.

Ins Hauptverzeichnis des ZF-Projekts wechseln und das Tool folgendermaßen starten:

laminas-migration migrate 

Beziehungsweise bei einer nicht-systemweiten Installation:

/PFAD-ZUM-LAMINAS-MIGRATION-TOOL/vendor/bin/laminas-migration migrate 

Für ein ZF-Projekt, das der Standardstruktur entspricht, also mit den Unterverzeichnissen module/, vendor/, public/ etc, sollte dies problemlos funktionieren. Bei einer abweichenden Struktur sollte man gegebenenfalls Verzeichnisse, die außer der Reihe existieren, von der Migration ausschließen. Angenommen, man hat im Wurzelverzeichnis des ZF-Projektes ein Verzeichnis namens meine-lib/ mit eigenen PHP-Bibliotheken, so kann man dieses wie folgt von der Migration ausschließen:

laminas-migration migrate --exclude meine-lib 

Nun noch die neuen Abhängigkeiten installieren:

composer install 

Diese Revision wurde am 9. Oktober 2026 01:02 von mubuntuHH erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Installation, PHP, Server, Internet, Webanwendung, Framework, Composer, Programmierung, ungetestet