PHP-Update 7 auf 8

PHP-Update mit Analyse statt Bauchgefühl

Der Weg von PHP 7 auf PHP 8: erst Kompatibilitätsanalyse, dann Tests als Sicherheitsnetz, automatisierter Umbau und eine Umstellung, die mit dem Hoster abgestimmt ist.

PHP seit 1998 Analyse vor dem Angebot Tests bleiben im Projekt
Was im Lieferumfang ist

Ein Update, das planbar bleibt

Als Senior Freelancer beginnt ein PHP-Update von 7 auf 8 mit Analyse statt Bauchgefühl und beginnt anders, als es aussieht: es sieht nach einer Zeile in der Server-Konfiguration aus und ist in der Praxis ein eigenes kleines Vorhaben. PHP 8 bringt nicht nur neue Sprachmittel mit, sondern nimmt auch Rücksichten zurück, die frühere Versionen noch gewährt haben: Was in PHP 7 eine Warnung im Protokoll war, ist in PHP 8 oft ein harter Abbruch. Deshalb steht am Anfang keine Umstellung, sondern eine Kompatibilitätsanalyse.

Dafür kommen drei Werkzeuge zum Einsatz, die sich gut ergänzen: PHPCompatibility durchsucht den Code auf Stellen, die mit der Zielversion nicht mehr funktionieren, Rector kann viele davon anschließend automatisiert umbauen, und PHPStan findet Unstimmigkeiten, die erst durch die strengeren Regeln auffallen. Dazu kommt der Blick auf die Composer-Pakete: Welche brauchen eine neue Version, welche haben keinen Nachfolger und müssen ersetzt werden. Das Ergebnis ist eine priorisierte Liste mit Aufwandsschätzung, bevor die erste Zeile geändert wird.

Die häufigsten Stolpersteine sind gut bekannt: entfernte Funktionen wie each(), create_function() oder money_format(); strengere Regeln beim stillschweigenden Umwandeln zwischen Zahlen und Zeichenketten; Bibliotheken, die nie für PHP 8 freigegeben wurden; und eigene Anpassungen, die nirgends dokumentiert sind. Keiner dieser Punkte ist dramatisch, solange er vor der Umstellung bekannt ist statt danach.

Der wichtigste Teil ist deshalb oft gar nicht das Update selbst, sondern das Sicherheitsnetz. In gewachsenen Anwendungen gibt es meist wenige oder keine Tests. Bevor umgebaut wird, entstehen sie für die Abläufe, bei denen ein Fehler richtig weh tut: Anmeldung, Bestellung, Zahlung, Import. Diese Tests bleiben danach im Projekt und machen jedes weitere Update ruhiger, was langfristig oft mehr wert ist als der Versionssprung selbst.

Zur Umstellung gehört die Abstimmung mit dem Hoster oder der internen IT, weil neben der PHP-Version meist auch Einstellungen zu Arbeitsspeicher, Laufzeiten und Erweiterungen anzupassen sind. Getestet wird vorher in einer Testumgebung mit einer Kopie der Echtdaten, umgestellt wird zu einer verkehrsarmen Zeit, und der Rückweg bleibt bis zur Freigabe offen. Soll direkt danach ein Framework-Sprung folgen oder eine größere Modernisierung, wird das getrennt geplant: Vermischt man beides, ist im Fehlerfall die Ursache kaum einzugrenzen.

Die Zusammenarbeit läuft standardmäßig zu 100 % remote und damit ortsunabhängig, direkt mit Auftraggebern, als Verstärkung für Agenturen und über IT-Vermittler. Gebraucht werden Zugriff auf das Git-Repository und eine Testumgebung. Gearbeitet wird aus dem eigenen Büro im kontorworx-Coworking-Space in Rheine, persönliche Termine vor Ort sind nach Absprache möglich, etwa zum Auftakt mit dem internen Team.

Aktuelle Verfügbarkeit · Eingeschränkt

Freie Kapazität ab 01.09.2026

25% für neue Projekte

Antwort innerhalb von 2-5 Werktagen je nach Projektgröße.

Anwendungsfälle

Was ein PHP-Update bringt

Wieder im unterstützten Bereich sein

PHP 7.4 bekommt seit November 2022 keine Sicherheits-Updates mehr, ältere Versionen entsprechend länger nicht. Auf einer gepflegten Version schließt das PHP-Projekt Lücken selbst, statt dass jede einzelne umgangen werden muss.

Der Hoster stellt die alte Version ab

Viele Anbieter nehmen alte PHP-Versionen aus dem Programm und setzen dafür eine Frist. Dann braucht es jemanden, der das Update vor Fristablauf geordnet durchzieht, statt es am Stichtag zu erzwingen.

Aktuelle Bibliotheken einsetzen können

Viele Composer-Pakete setzen inzwischen PHP 8 voraus. Nach dem Update stehen aktuelle Versionen wieder offen, samt ihrer Fehlerbehebungen und neuen Funktionen.

Mehr Tempo ohne mehr Hardware

PHP 8 arbeitet spürbar schneller als PHP 7, ohne dass am Code etwas geändert wird. Wie viel es im Einzelfall ist, zeigt der Vergleich vorher und nachher in der Testumgebung.

Moderner schreiben können

Aufzählungstypen, benannte Argumente, kürzere Konstruktoren, Vergleichsausdrücke: PHP 8 macht viele Stellen knapper und klarer. Das zahlt sich vor allem bei künftigen Erweiterungen aus.

Ein Framework-Update steht an

Aktuelle Symfony- und Laravel-Versionen setzen PHP 8 voraus. Dann ist das PHP-Update der notwendige erste Schritt und lässt sich gut mit dem Framework-Sprung planen.

Tests entstehen als Nebenprodukt

Für ein sicheres Update entstehen Tests an den kritischen Stellen. Die bleiben danach da und machen jedes weitere Update deutlich ruhiger, das ist der eigentliche langfristige Gewinn.

Ein größerer Umbau soll vorbereitet werden

Vor einer Modernisierung ist das PHP-Update oft der günstigste erste Schritt: kleiner Umfang, sofort spürbar, und danach steht die Anwendung auf einer Grundlage, auf der sich weiterarbeiten lässt.

Vorgehen

Wie das Update abläuft

Wie viele Anpassungen nötig sind, hängt am Alter des Codes und an den eingesetzten Bibliotheken. Die Kompatibilitätsanalyse am Anfang macht das sichtbar, danach steht eine belastbare Schätzung. Vertragsbasis ist ein Dienstvertrag mit Abrechnung nach Aufwand.

  1. 1

    1. Kompatibilitätsanalyse

    Prüfung der Codebasis mit PHPCompatibility, Rector und PHPStan sowie ein Blick auf die Composer-Pakete: Welche verlangen eine Anpassung, welche haben einen Nachfolger, welche sind aufgegeben. Ergebnis ist eine priorisierte Liste mit Aufwandsschätzung.

  2. 2

    2. Sicherheitsnetz aufbauen

    Sind keine oder wenige Tests vorhanden, entstehen sie zuerst für die wichtigsten Abläufe: Anmeldung, Bestellung, Zahlung, Import. Ohne dieses Netz wäre jede Änderung ein Sprung ins Dunkle.

  3. 3

    3. Automatisierter Umbau

    Rector wendet die Regeln für die Zielversion an, ergänzt Typangaben und modernisiert wiederkehrende Muster. Jede automatische Änderung wird durchgesehen, nichts geht ungeprüft in den Code.

  4. 4

    4. Handarbeit an den Reststellen

    Was ein Werkzeug nicht sicher entscheiden kann: geänderte Bedeutungen, Austausch aufgegebener Pakete, strengere Typprüfungen. Dazu die Tests laufen lassen und die kritischen Abläufe von Hand durchgehen.

  5. 5

    5. Umstellung

    Test in der Testumgebung mit einer Kopie der Echtdaten, Vergleich der Antwortzeiten vorher und nachher, Wechsel zu einer verkehrsarmen Zeit, danach erhöhte Aufmerksamkeit und ein kurzer Abschlussbericht.

FAQ

Fragen zum PHP-Update

Was kostet ein PHP-Update von 7 auf 8?

Das Update läuft nach Aufwand auf Tagessatzbasis; die Tagessätze stehen offen auf der PHP-Fullstack-Seite. Eine gepflegte Anwendung mit Tests ist zügig durch. Mehr Zeit brauchen Codebasen mit vielen Warnungen, aufgegebenen Bibliotheken und ohne Tests, weil dort jede Änderung von Hand abgesichert werden muss. Die Kompatibilitätsanalyse am Anfang macht genau diesen Unterschied sichtbar, bevor eine Zahl genannt wird.

Welche PHP-Versionen sind im Einsatz?

Gearbeitet wird mit den aktuellen Versionen PHP 8.4 und 8.5, ebenso mit den noch unterstützten Ständen davor. Der häufigste Weg ist PHP 7.4 auf 8.x; der Sprung ist meist gut machbar, weil 7.4 viele Änderungen schon vorbereitet. Von 7.0 bis 7.3 sind Zwischenschritte sinnvoll, damit Fehlerquellen einzeln auffallen. Von PHP 5.6 aus ist es ein deutlich größeres Vorhaben und meist Teil einer Modernisierung.

Welche Stolpersteine gibt es typischerweise?

Vier Gruppen: entfernte Funktionen, die in PHP 7 nur eine Warnung erzeugt haben und in PHP 8 nicht mehr existieren, etwa each(), create_function() oder money_format(); strengere Typprüfungen, weil PHP 8 stillschweigende Umwandlungen zwischen Zahlen und Zeichenketten nicht mehr durchgehen lässt; Composer-Pakete, die nicht für PHP 8 freigegeben oder inzwischen aufgegeben sind; und eigene Erweiterungen oder Anpassungen, die nirgends dokumentiert sind. Alle vier sind lösbar, wenn sie vorher bekannt sind.

Wie wird das Update abgesichert?

In drei Stufen: statische Analyse mit PHPStan und Rector, Tests für die kritischen Abläufe, die vorher entstehen, falls sie fehlen, und manuelles Durchgehen der wichtigsten Wege durch die Anwendung. Getestet wird in einer Testumgebung mit einer Kopie der Echtdaten, erst danach kommt die Umstellung. Ein Rückweg auf den alten Stand bleibt bis zur Freigabe offen.

Muss die Anwendung während des Updates stillstehen?

Nein. Gearbeitet wird auf einer Kopie, die Anwendung läuft normal weiter. Nur für die Umstellung selbst gibt es ein kurzes Zeitfenster, das auf eine verkehrsarme Zeit gelegt wird. Bei größeren Systemen lässt sich der Wechsel auch schrittweise fahren, wenn die Infrastruktur das hergibt.

Wird das Update auch mit dem Hoster abgestimmt?

Ja, das gehört dazu. Die PHP-Version wird auf dem Server umgestellt, oft zusammen mit Einstellungen zu Arbeitsspeicher, Laufzeiten und Erweiterungen. Diese Abstimmung läuft direkt mit dem Hoster oder der internen IT, damit Test- und Produktivumgebung am Ende dieselbe Version fahren.

Lohnt es sich, gleich weitere Themen mitzunehmen?

Manchmal. Wenn ohnehin an vielen Stellen angefasst wird, ist es sinnvoll, gleich einen Blick auf den Zustand des Codes mitzunehmen oder ein anstehendes Framework-Update anzuschließen. Was sich nicht empfiehlt, ist beides in einem Schritt zu vermischen: Geht danach etwas schief, ist die Ursache schwer einzugrenzen.

Wer betreut die Anwendung danach?

Auf Wunsch läuft die laufende PHP-Betreuung weiter, sodass die nächste Version nicht wieder zum Projekt wird. Alternativ übernimmt das interne Team. Die entstandenen Tests, die Analyse und der Abschlussbericht bleiben in jedem Fall beim Auftraggeber.
Verwandte Leistungen

Auch interessant

PHP-Fullstack

Altsystem modernisieren

Mehr erfahren

PHP-Fullstack

PHP Code-Review & Audit

Mehr erfahren

PHP-Fullstack

Symfony-Projekte

Mehr erfahren

Tagessätze und Wartungspakete stehen offen.

Für PHP-Update 7 → 8 gilt derselbe Satz wie für jede andere Aufgabe: 760 bis 1.080 € pro Tag netto (95 bis 135 € pro Stunde), je nach Laufzeit und Dringlichkeit, Wartungspakete ab 349 € pro Monat. Alle Stufen im Detail auf der PHP-Seite. Was eine konkrete Aufgabe kostet, ergibt sich aus der Aufwandsschätzung nach dem Erstgespräch.

Welche PHP-Version läuft aktuell?

Ausgangsversion, Framework und ungefährer Umfang genügen als Angabe. Antwort mit erster Einschätzung innerhalb von 2-5 Werktagen.

Tagessätze 760-1.080 € netto · Antwort in 2-5 Werktagen · Direktkontakt