Diese Seite vertieft einen Teil unserer PHP-Migration: den Weg von einer gewachsenen PHP-5-Codebasis zu einem strukturierten Laravel-Projekt auf PHP 8.
Was PHP 5 von Laravel trennt
PHP-5-Anwendungen sind selten nach einem Plan gebaut. Sie sind gewachsen: ein Skript hier, eine Include-Datei da, eine zentrale Klasse, die mit der Zeit alles übernommen hat. Globale Variablen, direkter mysql_query-Zugriff, HTML und Logik in denselben Dateien. Das funktioniert, ist aber das Gegenteil dessen, was ein modernes Framework verlangt.
Laravel bringt Struktur, wo vorher keine war: klares Routing, einen sauberen Datenbankzugriff über Eloquent, getrennte Verantwortlichkeiten. Der Weg dorthin ist Umbau, nicht Übersetzung.
Die drei Hauptarbeiten
God-Klassen auflösen. Fast jede gewachsene PHP-Anwendung hat diese eine Klasse, die alles macht. Wir zerlegen sie in einzelne Services mit je einer klaren Aufgabe. Aus 4000 unübersichtlichen Zeilen werden Bausteine, die man verstehen und testen kann.
Datenbankzugriff modernisieren. Die alten mysql_*-Aufrufe – in PHP 7 entfernt, in PHP 8 längst Geschichte – werden durch Eloquent ersetzt. Damit verschwinden auch die zusammengebauten SQL-Strings, die so oft Einfallstor für Injection sind.
Altlasten bereinigen. magic_quotes hat über Jahre verunreinigte Daten in der Datenbank hinterlassen. Wir diagnostizieren das Ausmaß und bereinigen die Bestände automatisiert über einen Artisan-Befehl, statt Datensätze von Hand zu korrigieren.
Vom PHP-HTML-Mix zur API
In PHP 5 wird die Oberfläche meist direkt im Code erzeugt – echo mit HTML dazwischen. Bei der Migration trennen wir das: Laravel liefert die Daten über eine saubere API, die Oberfläche entsteht im React-Frontend. Backend und Frontend lassen sich danach unabhängig voneinander weiterentwickeln.
Schrittweise statt Stichtag
Wir überführen Modul für Modul mit fachlicher Abnahme. Die alte Anwendung bleibt online, bis das neue System jede Funktion trägt. Kein Big Bang, kein Risiko-Stichtag.
