Ab August 2025 wird PHP 8.4 die Version von PHP sein, die bei goneo für jeden Server voreingestellt ist. Kunden, die ein goneo Webhosting- oder Webserver-Paket gebucht haben, können auf die Versionen 8.3, 8.2 oder 8.1 jederzeit umschalten. Das von PHP nicht mehr unterstützte und damit potentiell unsichere Release 8.0 wird auch noch verfügbar sein, dies jedoch nur gegen eine extra Gebühr.
PHP 8.3 und 8.4 bringen im Vergleich zu seinen Vorgängern einige wichtige Vorteile
Mehr Leistung
Seit Version 8.3 bietet PHP eine verbesserte Performance durch Optimierungen des JIT-Compilers und der Speicherverwaltung. Dies führt zu schnelleren Webseiten und Anwendungen.
Benchmarks zeigen, dass das Release in einigen Anwendungsfällen bis zu 20% schneller sein kann als etwa PHP 8.2.
Erhöhte Sicherheit seit PHP 8.3
Die Einführung von typisierten Klassenkonstanten verbessert die Typsicherheit und hilft dabei, Typfehler zur Kompilierzeit zu erkennen. Dies kann potenzielle Sicherheitslücken reduzieren.
Zusätzliche Funktionen zur Zufallszahlengenerierung ermöglichen die Erstellung von kryptografisch sicheren Zufallszahlen, was die Sicherheit von Anwendungen verbessern kann.
Verbesserte Lesbarkeit und Wartbarkeit
Die Möglichkeit in PHP 8.3, Eigenschaften als „nur lesbar“ zu markieren, macht den Code klarer und leichter zu verstehen.
Unterstützung für mehrere Dateien beim Befehlszeilen-Linter ermöglicht es Entwicklern, mehrere Dateien gleichzeitig auf Fehler zu überprüfen, was Zeit spart.
Weitere kleine Syntaxverbesserungen tragen zu einem saubereren und konsistenteren Code bei.
Weitere bemerkenswerte Funktionen
„Tiefkopieren“ von readonly-Eigenschaften ermöglicht das Erstellen von Kopien von Objekten ohne unerwünschte Änderungen an den Originaldaten.
Neue String-Funktionen bieten zusätzliche Möglichkeiten zur Manipulation von Zeichenfolgen.
Verbesserungen bei der Dateisystem-API vereinfachen die Arbeit mit Dateien und Verzeichnissen.
Mit goneo ist es ab August 2025 möglich, PHP 8.4, 8.3, 8.1 zu nutzen und jeden Webserver jederzeit zwischen diesen Versionen umzuschalten. Dies sind die Versionen, die von PHP als Community-Versionen bezeichnet werden. goneo wird ab Anfang August 2025 alle Webserver standardmäßig mit PHP 8.4 betreiben.
📅 Prüfe nach dem Umstellungstermin am 4.8.2025, ob deine Websites und Webapps wie gewohnt funktionieren.
Auch PHP 8.0 steht bei goneo weiter zur Verfügung. Allerdings handelt es sich um eine veraltete Version, die zwar laut allgemeinen Empfehlungen nicht mehr genutzt werden sollte. Dennoch bietet goneo diese aus Kompatibilitätsgründen noch an, falls ältere Apps oder Plusgins nicht mit neueren PHP-Releases funktionieren. Es handelt sich bei PHP 8.0 um eine gehärtete Version, die extra als Option bezahlt werden muss, wenn man diese nutzen will. Die Buchung ist im goneo-Kundencenter möglich.
PHP 8.4 wurde am 21. November 2024 veröffentlicht und bringt noch eine Reihe weiterer signifikanter Neuerungen und Verbesserungen mit.
Wichtige neue Funktionen und Verbesserungen in PHP 8.4
Property Hooks (Eigenschaftshaken) Dies ist eine der größten Neuerungen. Sie ermöglichen es, Code auszuführen, wenn auf Klasseneigenschaften zugegriffen oder diese geändert werden. Dies bietet eine feinere Kontrolle über Eigenschaften und kann die Notwendigkeit vieler Getter- und Setter-Methoden reduzieren.
Asymmetrische Sichtbarkeit für Eigenschaften PHP 8.4 erlaubt es, Lese- und Schreibrechte für Eigenschaften getrennt festzulegen. Zum Beispiel kann eine Eigenschaft öffentlich lesbar, aber privat beschreibbar sein. Dies verbessert die Kapselung und die Code-Klarheit.
Verkettung von new ohne Klammern Eine kleine, aber feine syntaktische Verbesserung, die den Code lesbarer macht. Statt (new Class())->method() kann man nun new Class()->method() schreiben.
Neue Funktionen zum Auffinden von Array-Elementen Es wurden neue, effizientere Funktionen für die Suche in Arrays hinzugefügt, die die Arbeit mit Datenstrukturen erleichtern.
HTML5-Parsing in der DOM-Erweiterung Die DOM-Erweiterung unterstützt nun offiziell HTML5, was die Arbeit mit modernen HTML-Dokumenten erheblich vereinfacht und die Kompatibilität verbessert.
Multibyte-Trim-Funktionen (mb_str_pad()) Lange gewünschte Funktionen für den Umgang mit Multibyte-Strings (z.B. UTF-8) wurden hinzugefügt, was die String-Manipulation robuster macht.
Lazy Objects (Faule Objekte) Eine native Unterstützung für das Lazy Loading von Objekten, die die Speichernutzung optimieren kann, indem Objekte erst bei Bedarf instanziiert werden.
OPcache-Optimierungen Weitere Verbesserungen im OPcache sorgen für noch schnellere Ladezeiten von Skripten durch effizienteres Caching.
Objektorientierte API für BCMath Die BCMath-Erweiterung, die für beliebige Präzisionsmathematik verwendet wird, bietet jetzt eine objektorientierte API, was die Handhabung komplexer Berechnungen vereinfacht. Diese Objekte unterstützen auch Operator-Overloading.
Automatische Erfassung in mehrzeiligen Closures Mehrzeilige Closures erfassen nun Variablen automatisch aus dem umgebenden Scope, was die Notwendigkeit expliziter use-Klauseln reduziert und die Konsistenz mit Arrow Functions verbessert.
Veraltungen (Deprecations) in PHP 8.4
Jede neue Version bringt auch Veraltungen mit sich, um älteren, unsicheren oder weniger effizienten Code zu entfernen. In PHP 8.4 wurden unter anderem die cookie-lose Sitzungsverfolgung (session.use_trans_sid) sowie einige ältere DOM-Eigenschaften und Konstanten als veraltet markiert. Auch die Nutzung dynamischer Klasseneigenschaften wird nun als veraltet eingestuft.
PHP 8.4 hat eine geplante Lebenszeit bis Januar 2029. Bis dahin kann man mit Fixes für kritische Sicherheitslücken rechnen. Bugs und weniger kritische Sicherheistprobleme werden im Rahmen des „aktiven Supports“ bis Januar 2027 regelmäßig durch Updates korrigiert.
PHP 8.5 befindet sich derzeit in aktiver Entwicklung und wird voraussichtlich am 20. November 2025 veröffentlicht. Wann goneo PHP 8.5 bereitstellen wird, ist aktuell noch nicht entschieden, man kann aber Anfang 2026 damit rechnen. Es sind weitere Verbesserungen in den Bereichen Syntax, objektorientierte Programmierung und Performance geplant, darunter möglicherweise ein Pipe-Operator und erweiterte Debugging-Funktionen.
Fazit
PHP 8.3 und PHP 8.4 bieten eine Reihe von Verbesserungen gegenüber älteren Versionen, die die Leistung, Sicherheit, Lesbarkeit und Wartbarkeit von PHP-Anwendungen verbessern.
PHP 8.4 bietet im Vergleich zu 8.3 nochmal eine Reihe von bedeutenden Verbesserungen, die die Entwicklererfahrung, die Code-Qualität, die Performance und die Sicherheit weiter steigern. Welche Fragen, bei der Auswahl der passenden Version helfen können, ist im Blogartikel „So findest du die richtige PHP-8-Version“ beschrieben.
Wir empfehlen ein Upgrade, um von diesen Vorteilen zu profitieren, wobei du die Kompatibilität bestehender Anwendungen prüfen solltestt. Die Aktualisierung auf PHP 8.4 halten wir für besonders empfehlenswert.
Die Evolution von PHP und ihre Relevanz für Shared-Hosting-Anwender
Die Wahl der PHP-Version ist keine triviale technische Einstellung, sondern eine strategische Entscheidung, die die Leistung, Sicherheit und Zukunftsfähigkeit deiner Webanwendung direkt beeinflusst.
Dies gilt insbesondere im Shared-Hosting-Umfeld, wo Ressourcen geteilt und die serverseitigen Optimierungsmöglichkeiten für Nutzerinnen und Nutzer begrenzt sind.
Jede neue PHP-Version bringt nicht nur neue Funktionen, sondern auch entscheidende Verbesserungen in der Ausführungsgeschwindigkeit und der Sicherheit mit sich, die den Wert Ihres Hosting-Pakets direkt steigern können.
Dieser Beitrag soll ein Leitfaden sein, um die entscheidenden Entwicklungen in der PHP-Welt zu verstehen. Wir beleuchtet die Notwendigkeit des Upgrades von der inzwischen veralteten Version 8.0 und zeigt die konkreten Vorteile eines Wechsels auf.
Eine besonders dringliche Feststellung vorab: PHP 8.0 hat offiziell das Ende seiner Lebensdauer (End-of-Life, EOL) schon erreicht und erhält keine Sicherheitsupdates mehr. Der Verbleib auf dieser Version stellt an sich ein aktives und unnötiges Sicherheitsrisiko für deine Website dar und nimmt dir wichtige Performance- und Funktionsverbesserungen.
Ein Upgrade auf eine aktiv unterstützte Community-Version wie 8.1 oder höher ist daher nicht optional, sondern für jeden verantwortungsbewussten Website-Betreiber zwingend erforderlich.
In diesem Beitrag geht es um zwei Dinge:
Eine detaillierte Analyse des Sprungs von PHP 8.0 auf 8.1, als unmittelbarer und notwendiger Schritt, um deine Anwendung zu sichern und zu modernisieren.
Ein strategischer Ausblick auf PHP 8.4, der die wichtigsten Argumente für die nächste große Modernisierungswelle liefert und dir hilft, zukünftige Entwicklungen frühzeitig einzuplanen.
Teil 1: PHP 8.1 im Detail – Ein entscheidendes Upgrade gegenüber PHP 8.0
PHP 8.1 kann als ein „Maturity Release“ betrachtet werden. Es baut auf den grundlegenden Neuerungen von PHP 8.0 auf, verfeinert diese und fügt gleichzeitig wesentliche neue Werkzeuge hinzu, die Entwicklern helfen, robusteren, sichereren und ausdrucksstärkeren Code zu schreiben.
Für Anwender im Shared-Hosting-Umfeld sind vor allem die spürbaren Leistungsverbesserungen und die neuen Sprachfeatures von Bedeutung, die die Qualität von Plugins und Themes nachhaltig steigern können.
Leistungs- und Effizienzsteigerungen: Mehr Performance für dein Geld
Jede neue PHP-Version verspricht Leistungsverbesserungen, und PHP 8.1 bildet hier keine Ausnahme. Die Gewinne sind zwar evolutionär, aber in der Summe deutlich spürbar, insbesondere im ressourcensensiblen Shared-Hosting-Kontext.
Konkrete Benchmarks
Unabhängige Benchmarks belegen die Effizienzsteigerungen. Analysen von Phoronix, einer angesehenen Quelle für Performance-Tests, zeigen eine messbare Verbesserung von etwa 3-4% in synthetischen Benchmarks wie PHPBench im Vergleich zu PHP 8.0.5
Für die Betreiber von Content-Management-Systemen ist die spezifische Anwendungsleistung relevanter: Hier wurde für WordPress eine Beschleunigung von 3,5% gemessen. Auch wenn diese Zahlen auf den ersten Blick gering erscheinen mögen, summieren sie sich bei Websites mit hohem Traffic zu einer spürbaren Reduzierung der Serverlast und schnelleren Ladezeiten. Nach den massiven Performance-Sprüngen der PHP-7-Ära sind dies stetige, aber wertvolle evolutionäre Schritte.
Ein oft übersehener, aber für Shared Hosting extrem wichtiger Aspekt ist der Speicherverbrauch. Messungen deuten darauf hin, dass PHP 8.1 einen leicht geringeren Spitzen-Speicherverbrauch aufweisen kann als seine Vorgänger. In Hosting-Paketen, bei denen das memory_limit eine harte Grenze darstellt, kann diese Effizienzsteigerung den Unterschied zwischen einer stabil laufenden Website und einer, die an ihre Grenzen stößt, ausmachen.
Der „Game Changer“ für Shared Hosting: Inheritance Cache
Die wohl bedeutendste Leistungsverbesserung in PHP 8.1, die speziell für Shared-Hosting-Nutzer relevant ist, ist der sogenannte „Inheritance Cache“. Hierbei handelt es sich um eine tiefgreifende Optimierung im PHP-Kern, genauer gesagt im Opcache.
Opcache ist der Mechanismus, der kompilierten PHP-Code im Speicher vorhält, um wiederholte Anfragen schneller zu beantworten. Der Inheritance Cache optimiert, wie PHP die Beziehungen zwischen Klassen (also Elternklassen, implementierte Interfaces und verwendete Traits) auflöst und zwischenspeichert. Anstatt diese Verknüpfungen bei jeder Anfrage neu zu kompilieren, können sie nun direkt aus einem gemeinsamen Speicher (shared memory) geladen werden.
Der Grund, warum dies ein „Game Changer“ für Shared-Hosting-Kunden ist, liegt in seiner Einfachheit der Nutzung. Viele Performance-Optimierungen erfordern komplexe Code-Anpassungen oder Zugriff auf Server-Konfigurationsdateien, was im Shared Hosting nicht möglich ist, von einigen Direktiven in den htaccess- und user.ini-Dateien einmal abgesehen.
Der Inheritance Cache hingegen ist eine reine Engine-Optimierung. Er wird wirksam, sobald du im goneo-Kundencenter auf PHP 8.1 umschaltest – ganz ohne eine einzige Zeile Code zu ändern. PHP-Kernentwickler Dmitry Stogov schätzte den daraus resultierenden Performance-Gewinn auf 5 bis 8%, was die allgemeinen Benchmark-Werte sogar übertrifft. Du erhälst also eine „kostenlose“ Leistungssteigerung, die den Wert deines bestehenden Hosting-Pakets unmittelbar erhöht.
Revolution in der Code-Struktur und -Sicherheit: Die wichtigsten neuen Sprachfeatures
PHP 8.1 führt eine Reihe von Sprachfeatures ein, die die Art und Weise, wie moderner PHP-Code geschrieben wird, nachhaltig verändern. Für Betreiber von WordPress- oder Joomla-Seiten bedeutet dies, dass Entwickler von Themes und Plugins nun Werkzeuge an der Hand haben, um sicherere, verständlichere und wartungsärmere Erweiterungen zu erstellen.
Enumerations (Enums): Endlich typsichere Zustände
Eines der am meisten erwarteten Features in PHP 8.1 sind Enumerations, kurz Enums.3 Ein Enum erlaubt die Definition eines eigenen Datentyps, der nur eine feste, vordefinierte Anzahl von Werten annehmen kann.10 Ein klassisches Beispiel aus der Welt eines CMS wäre der Status eines Beitrags:
PHP
// PHP 8.1+
enum PostStatus {
case DRAFT;
case PENDING_REVIEW;
case PUBLISHED;
}
function setPostStatus(PostStatus $status) {
//... Logik zur Statusänderung
}
// Gültiger Aufruf
setPostStatus(PostStatus::PUBLISHED);
// Führt zu einem TypeError, da der Wert ungültig ist
// setPostStatus('published');
Vor Enums mussten Entwickler auf sogenannte „Magic Strings“ (z.B. status = 'published') oder „Magic Numbers“ (z.B. status = 2) zurückgreifen. Dies war eine häufige Fehlerquelle, da Tippfehler vom System nicht erkannt wurden und zu schwer nachvollziehbaren Bugs führten. Mit Enums wird der Code selbsterklärend und robuster.
Eine Funktion setPostStatus(PostStatus $status) ist unmissverständlich und typsicher. Enums werden intern wie Klassen behandelt und können sogar Methoden enthalten oder Interfaces implementieren. Für die Speicherung in einer Datenbank können sie mit „Backed Values“ (Werten vom Typ int oder string) versehen werden, was ihre praktische Anwendbarkeit enorm erhöht.7
Readonly Properties: Garantierte Datenintegrität
Ein weiteres mächtiges Feature sind readonly Eigenschaften. Eine Eigenschaft einer Klasse, die mit dem Schlüsselwort readonly deklariert wird, kann nur ein einziges Mal initialisiert werden (typischerweise im Konstruktor der Klasse) und danach nicht mehr verändert werden.
PHP
// PHP 8.1+
class UserData {
public function __construct(
public readonly int $userId,
public readonly string $username
) {}
}
$user = new UserData(123, 'testuser');
// Dies führt zu einem fatalen Fehler:
// $user->userId = 456; // Error: Cannot modify readonly property
Dies ist besonders nützlich für sogenannte Data Transfer Objects (DTOs) oder Value Objects (VOs), die Daten unveränderlich durch eine Anwendung transportieren sollen. Es verhindert unbeabsichtigte Zustandsänderungen und macht den Code sicherer und vorhersehbarer.
Zuvor mussten Entwickler umständlich private Eigenschaften mit öffentlichen Getter-Methoden kombinieren, um einen ähnlichen Effekt zu erzielen. readonly reduziert diesen „Boilerplate“-Code erheblich und macht die Intention des Entwicklers explizit.12
Fibers: Die Grundlage für die asynchrone Zukunft
Fibers sind ein komplexes, aber zukunftsweisendes Feature in PHP 8.1.3 Sie sind ein Low-Level-Mechanismus für kooperatives Multitasking, der es erlaubt, Code-Blöcke anzuhalten (suspend) und zu einem späteren Zeitpunkt an derselben Stelle fortzusetzen (resume).
Es ist wichtig zu verstehen, dass Fibers kein Feature für den direkten Gebrauch durch den durchschnittlichen Entwickler eines WordPress-Plugins oder eines einfachen PHP-Skripts sind. Sie sind ein Werkzeug für die Entwickler von Frameworks und Low-Level-Bibliotheken wie ReactPHP oder Amphp. Die Bedeutung für den Shared-Hosting-Anwender ist daher eine indirekte, aber strategisch wichtige:
Fibers legen den Grundstein für echte asynchrone Programmierung in PHP.
Zukünftige Versionen von Frameworks und möglicherweise sogar von CMS-Kernen wie WordPress können auf Basis von Fibers Operationen effizienter gestalten, die traditionell blockierend waren (z.B. mehrere API-Aufrufe gleichzeitig, Verarbeitung großer Dateien im Hintergrund).
Dies führt langfristig zu reaktionsschnelleren und leistungsfähigeren Anwendungen, ohne dass der Endentwickler die Komplexität von Fibers selbst beherrschen muss. Die Existenz von Fibers ist ein Signal, dass sich das PHP-Ökosystem in Richtung moderner, hochleistungsfähiger Architekturen bewegt.
Weitere wichtige Verbesserungen (Quality of Life)
PHP 8.1 brachte zudem eine Reihe kleinerer, aber im Entwickleralltag sehr willkommener Verbesserungen:
Pure Intersection Types: Ergänzend zu den Union Types (Foo|Bar) aus PHP 8.0 erlauben Intersection Types (Foo&Bar) die Deklaration, dass ein Objekt mehrere Interfaces gleichzeitig implementieren muss. Dies ermöglicht präzisere Typdefinitionen in komplexen objektorientierten Architekturen.
never Return Type: Dieser neue Rückgabetyp signalisiert, dass eine Funktion die Ausführung des Skripts garantiert beendet, sei es durch einen exit()-Aufruf oder das Werfen einer Exception. Dies hilft statischen Analysewerkzeugen, den Codefluss besser zu verstehen und potenzielle Fehler zu finden.
First-Class Callable Syntax: Eine neue, saubere Syntax (my_function(...)), um eine Referenz auf eine Funktion (ein „Callable“) zu erstellen. Dies vereinfacht den Umgang mit Callbacks und höherer Ordnungsfunktionen erheblich.
Array Unpacking mit String-Keys: Der Spread-Operator (...) kann nun auch auf assoziative Arrays mit String-Schlüsseln angewendet werden, was das Zusammenführen von z.B. Konfigurations-Arrays deutlich vereinfacht und lesbarer macht.
Risiken und Migration: Worauf du beim Umstieg achten müsstest
Ein Upgrade ist nie völlig ohne Risiko, aber bei PHP 8.1 sind die Hürden überschaubar. Die wichtigste Änderung, die in älterem Code zu Problemen führen kann, ist die strengere Handhabung von null-Werten.
Backward Incompatible Changes
PHP 8.1 ist in einigen Bereichen strenger als seine Vorgänger. Der markanteste Punkt ist, dass die Übergabe von null an interne PHP-Funktionen, deren Parameter nicht explizit null erlauben, nun eine Deprecated-Warnung auslöst.
In zukünftigen PHP-Versionen wird dies zu einem fatalen Fehler. Viele ältere Plugins oder Skripte haben dies möglicherweise nicht sauber gehandhabt, was nach dem Upgrade zu einer Flut von Warnungen im Error-Log führen kann. Es ist daher unerlässlich, nach dem Upgrade auf einer Staging-Umgebung die Fehlerprotokolle genau zu prüfen.
Wichtige Deprecations
„Deprecated“ bedeutet, dass ein Feature als veraltet markiert ist und in einer zukünftigen Version entfernt wird. Das Upgrade auf 8.1 ist die perfekte Gelegenheit, solchen Code zu modernisieren. Die folgende Tabelle fasst die wichtigsten Deprecations zusammen und bietet moderne Alternativen.
Veraltete Funktion/Feature
Kritikalität/Auswirkung
Moderne Alternative/Lösung
strftime(), gmstrftime()
Hoch
Diese Funktionen zur formatierten Datumsausgabe sind nun veraltet, da sie nicht auf allen Betriebssystemen konsistent funktionieren. Verwende stattdessen die date()-Funktion für einfache, nicht-lokalisierte Formate oder die IntlDateFormatter::format()-Klasse für lokalisierungsabhängige Ausgaben.
FILTER_SANITIZE_STRING
Hoch
Dieser Filter wurde oft fälschlicherweise als Allzweck-Sicherheitsmaßnahme verwendet. Er ist nun veraltet, da sein Verhalten unvorhersehbar sein kann. Verwende stattdessen spezifischere Bereinigungsfunktionen wie htmlspecialchars() zur Verhinderung von XSS-Angriffen.
mhash*() Funktionen
Mittel
Die gesamte mhash_*()-Funktionsfamilie ist veraltet. Nutze stattdessen die modernere und flexiblere hash_*()-Familie.
Implizite Umwandlung von float zu int mit Präzisionsverlust
Mittel
Eine Fließkommazahl wie 15.5 als Array-Schlüssel zu verwenden, führte bisher zur stillen Umwandlung in den Integer 15. Dieses Verhalten, das zu Datenverlust führt, ist nun veraltet und löst eine Warnung aus. Runde oder caste den Wert explizit.
Serializable Interface ohne __serialize()/__unserialize()
Hoch (für Entwickler)
Das alte Serializable-Interface mit seinen serialize()– und unserialize()-Methoden ist veraltet. Für Kompatibilität mit PHP 7.4 und höher sollten Klassen die neuen magischen Methoden __serialize() und __unserialize() implementieren.
Teil 2: Ausblick auf PHP 8.4 – Argumente für die nächste Generation
Während PHP 8.1 die Stabilität und Robustheit in den Vordergrund stellt, kann PHP 8.4 als ein „Developer Experience Release“ charakterisiert werden. Der Fokus dieser Version liegt darauf, langjährigen „Boilerplate“-Code zu eliminieren und die Ausdruckskraft der Sprache drastisch zu erhöhen.
Für Anwender von CMS wie WordPress oder Joomla bedeutet dies indirekt eine höhere Qualität der Erweiterungen, da Entwickler produktiver arbeiten und weniger fehleranfälligen Code schreiben können.
Die Zukunft der Entwicklerproduktivität: Sauberer und intuitiverer Code
PHP 8.4 führt einige der signifikantesten syntaktischen Verbesserungen der letzten Jahre ein. Diese zielen darauf ab, gängige Programmiermuster zu vereinfachen und den Code lesbarer und wartbarer zu machen.
Property Hooks: Das Ende der Getter/Setter-Flut
Property Hooks sind das wohl am meisten diskutierte Feature von PHP 8.4. Sie erlauben es Entwicklern, get- und set-Logik direkt an einer Klasseneigenschaft zu definieren, anstatt separate Methoden dafür schreiben zu müssen.
PHP
// PHP 8.4+
class User {
public string $emailAddress {
// Dieser 'set'-Hook wird bei jeder Zuweisung ausgeführt
set {
if (!filter_var($value, FILTER_VALIDATE_EMAIL)) {
throw new ValueError('Die E-Mail-Adresse ist ungültig.');
}
// $this->emailAddress wird hier intern gesetzt
$this->emailAddress = $value;
}
}
}
$user = new User();
$user->emailAddress = 'test@example.com'; // Gültig
// $user->emailAddress = 'invalid-email'; // Wirft eine ValueError Exception
Dies ist weit mehr als nur syntaktischer Zucker. Es verändert die Art und Weise, wie Objekte entworfen werden. Anstatt einer Klasse, die aus vielen privaten Eigenschaften und einer langen Liste von getEmail(), setEmail(), getName(), setName() etc. besteht, können Entwickler nun „intelligente Eigenschaften“ erstellen.
Die Logik (z.B. Validierung, Formatierung) befindet sich direkt bei den Daten, auf die sie sich bezieht. Dies reduziert die kognitive Last für Entwickler, macht den Code schlanker und intuitiver und führt letztendlich zu weniger Fehlern und einer einfacheren Wartung von Plugins und Themes.
Asymmetric Visibility: Fein-granulare Kontrolle
Asymmetric Visibility ist die logische Weiterentwicklung der readonly-Eigenschaften aus PHP 8.1. Es erlaubt, für das Lesen und Schreiben einer Eigenschaft unterschiedliche Sichtbarkeiten zu definieren.
Das häufigste Anwendungsszenario ist eine Eigenschaft, die von außen öffentlich gelesen, aber nur innerhalb der Klasse selbst verändert werden darf.
PHP
// PHP 8.4+
class Account {
// Öffentlich lesbar, aber nur privat beschreibbar
public function __construct(
public private(set) float $balance = 0.0
) {}
public function deposit(float $amount) {
if ($amount > 0) {
$this->balance += $amount; // Gültig, da innerhalb der Klasse
}
}
}
$account = new Account();
$account->deposit(100);
echo $account->balance; // Gibt 100 aus (Lesen ist public)
// Dies führt zu einem fatalen Fehler:
// $account->balance = 50; // Schreibzugriff von außen ist private
Dieses Feature bietet eine flexible und elegante Form der Kapselung, die bisher nur umständlich zu realisieren war. Es erhöht die Datenintegrität und verhindert, dass der Zustand eines Objekts von außen unkontrolliert manipuliert wird, was die Stabilität von komplexen Anwendungen wie E-Commerce-Plugins erheblich verbessert.
Weitere Produktivitäts-Booster
Methodenaufrufe bei new ohne Klammern: Eine kleine, aber im Alltag sehr willkommene Bereinigung. Statt (new Request())->send(); kann man nun einfach new Request()->send(); schreiben. Dies macht den Code flüssiger und besser lesbar.
Das #-Attribut: Bisher konnten Entwickler veraltete Funktionen nur über einen Kommentar (/** @deprecated */) markieren. PHP 8.4 führt ein natives Attribut # ein. Dies erlaubt es, eigene Funktionen, Methoden und Konstanten sauber als veraltet zu kennzeichnen, inklusive einer Nachricht und einer Versionsangabe. Moderne IDEs und statische Analysewerkzeuge können diese Information auslesen und Entwickler aktiv warnen, was die Code-Wartung im Team erheblich verbessert.
Direkte Vorteile für CMS wie WordPress und Joomla
Neben den allgemeinen Verbesserungen für Entwickler bringt PHP 8.4 auch sehr spezifische Vorteile, die sich direkt auf die Stabilität und Leistung von Content-Management-Systemen auswirken.
Der neue HTML5 DOM Parser: Ein Segen für Plugin-Entwickler
Dies ist möglicherweise das wichtigste Feature von PHP 8.4 für das gesamte CMS-Ökosystem. PHP 8.4 führt eine komplett neue, standardkonforme DOM-API ein (Dom\HTMLDocument), die speziell für das Parsen und Manipulieren von modernem HTML5-Code entwickelt wurde. Die bisherige DOMDocument-Klasse basierte auf der alten libxml2-Bibliothek, die bekanntermaßen Schwierigkeiten mit den Nuancen von HTML5 hatte.
Der praktische Nutzen ist immens. Unzählige Plugins in der WordPress- und Joomla-Welt müssen serverseitig HTML-Inhalte analysieren und verändern – man denke an SEO-Tools, die Meta-Tags einfügen, Caching-Plugins, die HTML optimieren, Page Builder, die Shortcodes verarbeiten, oder Sicherheits-Plugins, die Inhalte scannen. Der alte Parser führte hierbei oft zu Fehlern, zerschossenen Layouts oder unerwartetem Verhalten.
Ein robuster, standardkonformer Parser reduziert diese Fehlerquelle massiv. Für den Endanwender bedeutet dies: Plugins, die für PHP 8.4 aktualisiert werden, arbeiten zuverlässiger und verursachen weniger Kompatibilitätsprobleme untereinander.
Fortgesetzte Performance-Optimierungen
Auch PHP 8.4 setzt den Trend der Leistungssteigerung fort. Die Entwickler haben den JIT-Compiler (Just-In-Time) weiter verfeinert und den Speicherverbrauch optimiert. In ersten Berichten ist von erwarteten Geschwindigkeitsgewinnen im Bereich von 10-15% in bestimmten Szenarien die Rede.
Für ressourcenintensive Websites, wie WooCommerce-Shops mit vielen Produkten oder große Community-Seiten auf Joomla-Basis, bedeutet dies schnellere Ladezeiten (insbesondere ein besserer Time to First Byte, TTFB) und eine höhere Skalierbarkeit auf demselben Shared-Hosting-Paket.
Neue native Funktionen, die das Leben leichter machen
PHP 8.4 fügt dem Sprachkern nützliche Funktionen hinzu, die gängige Aufgaben vereinfachen:
Neue Array-Funktionen: Funktionen wie array_find(), array_any() und array_all() können komplexe Schleifenkonstrukte in Themes und Plugins durch einen einzigen, gut lesbaren Funktionsaufruf ersetzen.
Multibyte-fähige String-Funktionen: Funktionen wie trim() oder ucfirst() hatten bisher Probleme mit Multi-Byte-Zeichen (z.B. Umlaute). PHP 8.4 führt endlich native, Multibyte-sichere Pendants wie mb_trim() und mb_ucfirst() ein. Dies ist für internationalisierte Websites, eine Kernkompetenz vieler CMS, von entscheidender Bedeutung und vermeidet umständliche Workarounds.
Die folgende Tabelle fasst zusammen, wie die neuen Features von PHP 8.4 in konkrete Vorteile für Betreiber von CMS-Websites übersetzt werden können.
PHP 8.4 Feature
Technischer Zweck
Praktischer Nutzen für WordPress/Joomla-Seiten
Property Hooks
Reduzierung von Boilerplate-Code für Getter und Setter
Schnellere Entwicklung, weniger fehleranfällige und leichter wartbare Plugins und Themes.
Asymmetric Visibility
Fein-granulare Kontrolle über Lese- und Schreibzugriff auf Eigenschaften
Erhöhte Datenintegrität in komplexen Plugins (z.B. E-Commerce, Mitgliederbereiche), was zu weniger Bugs führt.
Neuer HTML5 DOM Parser
Standardkonformes Parsen von modernem HTML5
Zuverlässigere Funktion von SEO-Plugins, Page Buildern, Caching-Tools und anderen Erweiterungen, die Inhalte manipulieren.
JIT- und Speicher-Optimierungen
Schnellere Code-Ausführung und geringerer RAM-Bedarf
Schnellere Seitenladezeiten (TTFB), bessere Performance bei hohem Traffic, potenziell niedrigere Hosting-Kosten, weil es Upgrades ersparen könnte.
Neue Array- und String-Funktionen
Vereinfachung gängiger Programmieraufgaben
Sauberer, verständlicherer Code in Themes und Plugins; bessere und einfachere Unterstützung für mehrsprachige Websites.
Strategische Überlegungen für Shared-Hosting-Nutzer
Trotz der überzeugenden Vorteile ist bei einem Upgrade auf eine brandneue PHP-Version wie 8.4 Vorsicht geboten. Die größte Hürde im CMS-Umfeld ist nicht der Core selbst, sondern das riesige Ökosystem aus Themes und Plugins von Drittanbietern.
Der Faktor Kompatibilität
WordPress Core mag schnell als „kompatibel“ oder „beta-kompatibel“ mit einer neuen PHP-Version deklariert werden. Doch die Funktionalität deiner Website hängt von der Summe aller installierten Teile ab. Ein einziges veraltetes Plugin, das nicht mit PHP 8.4 kompatibel ist, kann deine gesamte Website lahmlegen.
Empfohlene Vorgehensweise für das Upgrade auf PHP 8.4:
Abwarten und Beobachten: Stelle eine Produktivseite niemals unmittelbar nach dem Release von PHP 8.4 um. Gib dem Ökosystem Zeit, sich anzupassen. Wie lange diese Phase dauern sollte, ist sehr vom eigentlichen Ökosystem abhängig. Je aktiver und größer die Kernanwendung ist, desto schneller wird ein Update verfügbar sein. Doch es gibt auch „exostische“ Plugins oder Erweiterungen, hinter denen nur ein einzelner Entwickler in seiner Freizeit arbeitet.
Kommunikation der Entwickler verfolgen: Prüfe aktiv die Websites und Changelogs der Entwickler deiner kritischen Plugins und Ihres Themes. Achte auf Ankündigungen zur PHP 8.4-Kompatibilität.
Staging-Umgebung nutzen: Sobald PHP 8.4 bereitssteht, ist die Nutzung einer Staging-Umgebung (eine 1:1-Kopie deiner Live-Seite) unerlässlich. Schalte dort auf PHP 8.4 um und teste alle Funktionen deiner Website gründlich. Achte auf Fehler im Frontend und im Backend und prüfee die PHP-Error-Logs. Für WordPress gibt es den WordPress-Playground, um PHP-Releases, Themes, Plugins mit aktuellen WordPress-Versionen zu testen: https://wordpress.org/playground/
Realistischer Zeitplan: Ein realistischer Zeitplan für die Umstellung einer wichtigen Produktivseite auf PHP 8.4 ist oft 6 bis 12 Monate nach dem offiziellen Release der Version. Zu diesem Zeitpunkt haben die meisten seriösen Entwickler ihre Produkte aktualisiert.
Eine weitere Neuerung, die es zu beachten gilt, ist das sogenannte „Unbundling“ von Erweiterungen. In PHP 8.4 wurden einige Erweiterungen, die früher Teil des Kerns waren, wie z.B. IMAP, in das PECL-Repository ausgelagert. Das bedeutet, sie sind nun optional.
Wenn deine Website oder ein benutzerdefiniertes Skript auf eine solche Erweiterung angewiesen ist, darfst du vor dem Upgrade explizit bei deinem Hoster nachsehen, ob diese Erweiterung auch für dessen PHP-8.4-Umgebung bereitgestellt und aktiviert ist. Dafür hilft die Anweisung phpinfo().
Zusammenfassung und Handlungsempfehlungen
Die kontinuierliche Weiterentwicklung von PHP bietet Website-Betreibern enorme Chancen zur Verbesserung von Leistung, Sicherheit und Funktionalität. Die Analyse der Versionen 8.1 und 8.4 zeigt einen klaren Weg in die Zukunft.
Synthese der Erkenntnisse:
Das Upgrade von PHP 8.0 ist aufgrund des erreichten End-of-Life-Status und der damit verbundenen Sicherheitsrisiken unverhandelbar und sollte höchste Priorität haben.
PHP 8.1 ist der logische, sichere und performantere Nachfolger von PHP 8.0. Es bietet mit Features wie dem Inheritance Cache sofortige und messbare Vorteile, die selbst ohne Code-Änderungen direkt im Shared Hosting wirksam werden.
PHP 8.4 ist ein wegweisendes Release, das die Entwicklerproduktivität massiv steigert. Dies führt indirekt zu qualitativ hochwertigeren und stabileren Plugins und Themes. Mit dem neuen, standardkonformen DOM-Parser wird zudem ein technisches Kernproblem des CMS-Ökosystems gelöst, was die Zuverlässigkeit von unzähligen Erweiterungen verbessern wird.
Klare Handlungsempfehlungen:
Basierend auf dieser Analyse ergibt sich eine klare Checkliste für Website-Betreiber im Shared-Hosting-Umfeld:
Sofort handeln: Plane umgehend das Upgrade Ihrer Anwendung von PHP 8.0 auf die neueste stabile Version von PHP 8.1 oder 8.2, je nach Verfügbarkeit und bestätigter Kompatibilität. Behandle dies als eine dringende Sicherheitsmaßnahme.
Testen, testen, testen: Nutze vor jedem Upgrade eine Staging-Umgebung. Überprüfe die Kompatibilität der gesamten Website (CMS-Core, alle Plugins, aktives Theme) mit der neuen PHP-Version, bevor du diese auf der Live-Seite aktivierst.
Code überprüfen: Falls du benutzerdefinierte Skripte oder ein eigenes Theme im Einsatz hast, prüfe diese auf die in Tabelle 1 genannten veralteten Funktionen und modernisiere den Code proaktiv.
PHP 8.4 im Auge behalten: Verfolge die Ankündigungen deiner Plugin- und Theme-Entwickler bezüglich der PHP 8.4-Kompatibilität. Erstelle eine Liste der kritischen Erweiterungen und deren Status.
Strategisch planen: Plane das Upgrade auf PHP 8.4 realistischerweise noch für die zweite Hälfte des Jahres 2025 ein. Das Ökosystem dürfte bis dahin ausreichend Zeit gehabt haben, sich anzupassen. Überprüfe rechtzeitig die Verfügbarkeit von eventuell benötigten PECL-Erweiterungen.
Indem du diesen Schritten folgst, stellst du sicher, dass deine Webanwendung nicht nur sicher und performant bleibt, sondern auch für die technologischen Fortschritte der Zukunft bestens gerüstet ist.
PHP8-Version 8.4 unterstützt uns bei goneo dabei, dir eine technisch führende, sichere und performante Plattform bereitzustellen. Das ist unser Ziel. Mit der Einführung von PHP 8.4 als neue Standardversion ab dem 1. August 2025, machen wir einen weiteren großen Schritt in Richtung Zukunft. Ab diesem Datum steht dir PHP 8.4 als Standard für alle Neuinstallationen und Umstellungen zur Verfügung.
Natürlich kannst du im goneo-Kundencenter auch weiterhin flexibel auf ältere 8.x-Versionen (8.3, 8.2, 8.1) ausweichen, falls dein Projekt das aktuell erfordert.
PHP 8.0 bleibt nur noch aus Gründen der Sicherheit und Wartbarkeit als kostenpflichtige Option für Altprojekte erhalten und sollte nicht mehr produktiv genutzt werden. Es wird auf Monatsbasis möglich sein, gegen einen Aufpreis das Release 8.0 zu verwenden. Es handelt sich um eine eigens gehärtete Version, nicht um das als „veraltet“ ausgewiesene Communityrelease.
Uns ist bewusst, wie zentral die Frage der Kompatibilität für dich ist: Themes, Plugins, individuelle Eigenentwicklungen – alles soll reibungslos funktionieren. Deshalb findest du in diesem Blogbeitrag einen umfassenden Überblick über die wichtigsten Neuerungen, Vorteile und potenziellen Herausforderungen der PHP-Versionen 8.2, 8.3 und 8.4 – mit besonderem Fokus auf die goneo-Umgebung und die Bedürfnisse von Agenturen, Webentwickler:innen und ambitionierten Website-Betreiber:innen.
PHP 8.4 – Der aktuelle Standard für Leistung und Entwicklerfreundlichkeit
PHP 8.4 wurde im November 2024 veröffentlicht und hebt die Sprache auf ein neues Level an Produktivität, Sicherheit und Komfort für Entwickler. Die Neuerungen zielen darauf ab, deinen Code wartbarer, sicherer und klarer zu machen und bekannte Muster aus modernen Programmiersprachen einzuführen.
Revolution der OOP mit Property Hooks und Asymmetric Visibility
Mit Property Hooks kannst du Get- und Set-Logik direkt an Eigenschaften einer Klasse binden. Das bedeutet: Keine separaten Getter- und Setter-Methoden mehr für jeden Anwendungsfall – weniger Boilerplate, mehr Übersicht und bessere Wartbarkeit. Besonders interessant: Property Hooks lassen sich auch in Interfaces definieren, was für konsistente Datenzugriffsmuster sorgt.
Asymmetric Visibility erweitert deine Möglichkeiten bei der Zugriffskontrolle auf Eigenschaften. So kannst du zum Beispiel eine Eigenschaft öffentlich lesbar, aber nur intern schreibbar machen (public private(set)). Das erhöht die Kapselung und reduziert Fehlerquellen – und lässt sich elegant mit der modernen Constructor Property Promotion kombinieren.
Verbesserungen für den Alltag: Syntax, Arrays und Strings
PHP 8.4 beseitigt kleine, aber lästige Unschönheiten der Vergangenheit. So kannst du jetzt zum Beispiel Methoden direkt nach einem new-Konstrukt ohne zusätzliche Klammern aufrufen. Das neue #Deprecated-Attribut ersetzt das bisherige PHPDoc-Tag und sorgt für konsistente Deprecation-Hinweise direkt aus der Engine.
Auch im Bereich Arrays und Strings gibt es neue Hilfsfunktionen (u.a. array_find(), array_any(), mb_trim()), die alltägliche Aufgaben vereinfachen und Fehlerquellen eliminieren.
Erweiterungen: HTML5-DOM, BCMath, PDO
Ein echter Meilenstein ist der neue HTML5-kompatible DOM-Parser. Endlich kannst du HTML serverseitig nach aktuellen Standards parsen und mit einer vertrauten, modernen API (ähnlich querySelector in JavaScript) arbeiten! Für numerische Präzision gibt es eine objektorientierte BCMath-API mit Operatorüberladung. Und bei PDO stehen nun treiberspezifische Subklassen zur Verfügung, was die Typisierung und Nutzung von Datenbankschnittstellen verbessert.
Leistung und JIT-Compiler
Die reine Performance zwischen den 8.x-Versionen ist laut aktuellen Benchmarks stabil. Die größten Vorteile erlebst du beim Umstieg von älteren PHP-Versionen (z.B. 7.4) auf 8.x. Die eigentlichen Geschwindigkeitsgewinne erzielst du, wenn du die neuen APIs und Muster aktiv in deiner Anwendung nutzt.
Wichtige Änderungen: Deprecations und Erweiterungen in PHP 8.4
Bitte beachte, dass implizit nullbare Typen (function foo(string $s = null)) als deprecated markiert wurden und in PHP 9.0 entfernt werden. Nutze stattdessen explizit ?string $s = null. Außerdem wurden einige Erweiterungen wie IMAP und Pspell aus dem PHP-Kern entfernt und stehen ggf. über PECL zur Verfügung.
Neben PHP 8.4 stehen weiterhin PHP 8.1, 8.2 und 8.3 bereit. Wir zeigen hier die Unterschiede von Release zu Release und geben Hinweise auf Unterschiede zu den Vorversionen undd Tipps für eine gelingenden Umstieg.
Ihre Website im Overdrive
Ein Leitfaden zur PHP 8.x-Evolution bei goneo. Verstehen Sie die Vorteile des neuen Standards PHP 8.4 und wie Sie die richtige Version für Ihr Projekt wählen.
Achtung: Sicherheitsrisiko!
Der Betrieb einer Website mit PHP 8.0 ist keine Option mehr. Seit November 2023 hat diese Version ihr „End-of-Life“ (EOL) erreicht und erhält keinerlei Sicherheitsupdates. Jede neu entdeckte Schwachstelle bleibt offen und macht Ihre Website zum leichten Ziel für Angreifer.
EOL
PHP 8.0
Nur Sicherheit
PHP 8.1 / 8.2
Aktiver Support
PHP 8.3+
Die Evolutionsstufen von PHP 8
PHP 8.1
Das Fundament der Moderne
Führte Enums und Readonly Properties ein und legte mit dem Inheritance Cache den Grundstein für spürbare Performance-Gewinne.
PHP 8.2
Die große Bereinigung
Verbesserte die Code-Qualität durch die Deprecation von dynamischen Eigenschaften – die häufigste Ursache für Kompatibilitätsprobleme bei älterem Code.
PHP 8.3
Die Härtung
Fokus auf Zuverlässigkeit und Fehlervermeidung mit Features wie typisierten Konstanten und dem #[Override]-Attribut. Ein stabiles Kraftpaket.
PHP 8.4
Der Produktivitäts-Boost
Revolutioniert die Entwicklererfahrung mit Property Hooks und einem neuen HTML5-Parser, was zu saubererem und zuverlässigerem Code führt.
Feature-Vergleich: Was steckt unter der Haube?
PHP 8.2
Die wichtigste Änderung war die Deprecation dynamischer Eigenschaften. Code, der nicht deklarierte Eigenschaften zu Objekten hinzufügte, erzeugt nun Warnungen.
🛡️ Readonly-Klassen
🔧 DNF-Typen
⚠️ Deprecation: Dynamische Eigenschaften
PHP 8.3
Diese Version konzentrierte sich auf Code-Sicherheit und Zuverlässigkeit, um Fehler proaktiv zu verhindern und die Wartung zu vereinfachen.
🔒 Typisierte Klassenkonstanten
🎯 #[Override]-Attribut
✅ json_validate() Funktion
PHP 8.4
Der neue Standard bei goneo. Ein riesiger Sprung für die Entwicklerproduktivität. Erlaubt saubereren, kürzeren und ausdrucksstärkeren Code und verbessert die Zuverlässigkeit von Plugins durch einen modernen HTML5-Parser.
🚀 Property Hooks & Asymmetric Visibility
📄 Neuer, moderner HTML5 DOM-Parser
💡 Vereinfachte `new`-Aufrufe
⚠️ Deprecation: Implizit nullbare Typen
Performance: Ein stetiger Aufwärtstrend
Während die Leistungssteigerungen innerhalb der 8.x-Serie nuancierter sind als bei früheren großen Sprüngen, ist der Trend klar positiv. Die wahren Vorteile liegen in der Nutzung der neuen, effizienteren APIs.
Der stille Held: Inheritance Cache
PHP 8.1 führte eine Opcache-Optimierung ein, die allein einen Leistungsschub von 5-8% bringen kann – ein kostenloser Bonus für jede Website, ganz ohne Code-Änderungen.
Ihre Migrations-Checkliste
Ihre Website funktioniert nach dem Upgrade auf PHP 8.4 nicht? Keine Panik. Folgen Sie diesem Leitfaden.
1. Start: Upgrade auf PHP 8.4
Prüfen Sie Ihre Website.
▼
2. Funktioniert alles?
▼
Wenn NEIN:
▼
3. Fehleranalyse
Prüfen Sie die Error-Logs im goneo-Kundencenter.
▼
4. Version isolieren
Wechseln Sie schrittweise auf 8.3, dann 8.2, bis die Seite funktioniert.
▼
5. Handeln
Aktualisieren Sie das verantwortliche Plugin/Theme oder kontaktieren Sie den Entwickler.
Unsere Empfehlung
Für neue Projekte: Starten Sie direkt mit PHP 8.4. Sie profitieren von den neuesten Features, der besten Performance und dem längsten Support-Zeitraum.
Für bestehende Websites: Beginnen Sie mit PHP 8.4 und testen Sie gründlich. Wechseln Sie nur dann auf 8.3 oder 8.2, wenn spezifische Kompatibilitätsprobleme auftreten, die Sie nicht sofort lösen können.
Wichtig: Vermeiden Sie unbedingt PHP 8.0. Die Verwendung einer nicht mehr unterstützten Version ist das größte Risiko für Ihre Website.
PHP 8.3 (veröffentlicht im November 2023) hat vor allem die Typsicherheit und die Wartbarkeit großer Codebasen gestärkt. Besonders hervorzuheben sind:
Typisierte Klassenkonstanten, die Fehler bei Vererbungen verhindern.
Das #[Override]-Attribut, das Refactoring sicherer macht und Fehler bei Methodenüberschreibungen frühzeitig erkennt.
Verbesserte Fehlerbehandlung bei Date/Time-Operationen.
Die neue Funktion json_validate(), mit der du große JSON-Daten effizient prüfen kannst.
In Benchmarks zeigt PHP 8.3 je nach Anwendung (z.B. Drupal, WordPress, Laravel) teils deutliche Performancegewinne gegenüber 8.2 – in der goneo-Praxis ist der Unterschied meist moderat, aber spürbar.
PHP 8.2 – Das Kompatibilitätsfundament und der große Umbruch
Mit PHP 8.2 (Dezember 2022) begann die „Härtung“ der Sprache – vor allem durch das Ende der dynamischen Eigenschaften. Diese Änderung betrifft besonders viele WordPress- und Joomla-Plugins und kann zu E_DEPRECATED-Warnungen führen, wenn Klassen Eigenschaften dynamisch zugewiesen werden. Die saubere Lösung: Deklariere die Eigenschaften, nutze ggf. temporär das #AllowDynamicProperties-Attribut oder aktualisiere die betroffene Erweiterung.
Weitere Highlights:
Readonly-Klassen für wirklich unveränderliche Objekte
DNF Types für noch präzisere Typdeklarationen
Neue random-API für sichere Zufallszahlen
Was bedeutet das für dich als goneo-Kundin oder -Kunde?
Leistung
Den größten Leistungssprung erzielst du beim Wechsel von PHP 7.x auf 8.x. Innerhalb der 8.x-Linie sind die Unterschiede zwischen 8.2, 8.3 und 8.4 meist moderat, aber einzelne Frameworks profitieren von gezielten Verbesserungen. Nutze die neuen Funktionen aktiv, um das Optimum herauszuholen.
Sicherheit
PHP 8.0 erhält seit Ende 2023 keine Sicherheitsupdates mehr und bleibt nur noch als Option für Bestandsprojekte verfügbar. Wir empfehlen dir dringend, mindestens PHP 8.1 zu verwenden – besser jedoch eine aktuelle 8.x-Version. Der Betrieb einer Website auf PHP 8.0 stellt ein hohes Sicherheitsrisiko dar!
Migration und Kompatibilität: Unsere Empfehlungen
Prüfe deine Website nach der Umstellung auf die neue PHP-Version gründlich – insbesondere Startseite, Kontaktformulare, Shop, Login etc.
Schau in die Fehlerprotokolle (im goneo-Kundencenter oder per FTP unter /log/).
Halte dein CMS, alle Plugins und Themes auf dem aktuellen Stand.
Sollte es zu Problemen kommen: Nutze die Möglichkeit, im goneo-Kundencenter schrittweise auf eine ältere PHP-Version zurückzusetzen und so die Fehlerquelle einzugrenzen.
Die wichtigsten potenziellen Stolpersteine:
PHP 8.2: Deprecation dynamischer Eigenschaften – betrifft viele Plugins und Eigenentwicklungen
PHP 8.3: Strengere Date/Time-Exceptions
PHP 8.4: Deprecation implizit nullbarer Typen, IMAP/Pspell nur noch über PECL
Bei Migrationen von einer PHP8-Version wie PHP 8.0 zu einer anderen gilt es, Stolpersteine zu vermeiden. Eine gründliche Analyse zu zweit. etwa mit Leuten aus der WordPress-Community. hilft, da man leicht „betriebsblind“ werden kann.
goneo-Tipps für deinen Alltag
Die PHP-Version stellst du im goneo-Kundencenter im Bereich „Webserver“ pro Domain ein.
Für Debugging: Schreibe display_errors=on in die .user.ini deines Webspace.
Fehlerprotokolle findest du live im Kundencenter oder als Download im /log/-Verzeichnis.
Fazit: Welche PHP8-Version ist die richtige für dein Projekt?
PHP 8.4 ist die erste Wahl für neue, zukunftssichere Projekte mit modernen Anforderungen und kompatiblem Ökosystem.
PHP 8.3 ist der „Sweet Spot“ für viele produktive Websites, die hohe Stabilität, ausgereiften Funktionsumfang und breite Plugin-Kompatibilität brauchen.
PHP 8.2 ist die solide Basis für Projekte, bei denen einzelne Plugins oder Anpassungen noch nicht mit 8.3/8.4 harmonieren.
PHP 8.1 ist das absolute Support-Minimum – und PHP 8.0 solltest du nur noch im Ausnahmefall und mit klarer Perspektive auf ein Update nutzen.
Unsere Empfehlung: Setze auf PHP 8.4, wann immer dein CMS, deine Plugins und Themes das zulassen. Teste gründlich – und profitiere von maximalem Support, Performance und Sicherheit.
Bei Rückfragen oder Problemen steht dir unser goneo-Support gern zur Verfügung. Wir freuen uns auf dein Feedback und sind gespannt, wie du die neuen Features in deinen Projekten einsetzt!
Du hast Fragen oder wünschst dir spezielle goneo-Features rund um PHP? Sprich uns an – wir sind an deinen Erfahrungen und Anregungen interessiert!
Nochmal der wichiger Hinweis: PHP 8.4 ist ab 1.8.2025 als Standard bei goneo verfügbar. Wir werden automatisiert diese Version einstellen, auch für bestehende Websites. Achte auf den Umstellungstermin und überprüfe bitte deine Websites und Skripte, ob diese korrekt funktionieren. PHP 8.0 bleibt nur noch als kostenpflichtige Option bestehen und sollte aus Sicherheitsgründen nicht mehr produktiv verwendet werden.
Wir freuen uns, allen unseren goneo Webhosting- und Server-Kunden mitteilen zu können, dass PHP 8.3 ab sofort verfügbar ist. Diese neueste Minor-Version der PHP-Sprache von Ende 2023 bringt eine Vielzahl spannender neuer Funktionen und Verbesserungen mit sich, die das Potenzial haben, Ihre Webeprojekte auf das nächste Level zu heben.
Was ist neu in PHP 8.3?
PHP 8.3 stellt einen bedeutenden Schritt nach vorne für die PHP-Entwicklung dar. Hier sind einige der herausragenden neuen Funktionen und Verbesserungen, die das neue Release mit sich bringt.
Typisierung von Klassen-Konstanten
Diese Funktion ermöglicht es Entwicklern, Klassen-Konstanten einen spezifischen Typ zuzuweisen, was zu einer strengeren Code-Struktur und -Sicherheit führt.
Dynamisches Abrufen von Klassen-Konstanten
Mit dieser Funktionalität können Klassen-Konstanten nun dynamisch abgerufen werden, was für eine flexiblere Code-Gestaltung sorgt.
Neues #[Override] Attribut
Das #[Override] Attribut kennzeichnet, dass eine Methode eine bestimmte Methode in einer übergeordneten Klasse überschreibt. Das soll zur Code-Klarheit und -Sicherheit beitragen. Damit stellt man in PHP auch sicher, dass diese Methode in einer Elternklasse oder einem implementierten Interface vorhanden ist. Zudem macht die Angabe des Attributs deutlich, dass das Überschreiben der Methode absichtlich erfolgt. Der Nebeneffekt: Ein Refactoring wird leichter, da ein Fehler ausgegeben wird, wenn die überschriebene Methode in der entsprechenden Elternklasse entfernt wurde.
Tiefe Klonierung von Readonly-Eigenschaften
Read only – Eigenschaften können mittels der __clone Methode jetzt „tief geklont“ werden. Das soll die Arbeit mit unveränderlichen Objekten vereinfachen, weil Kopien von Objekten erstellt werden können, ohne unerwünschte Änderungen an den Originaldaten vornehmen zu müssen.
Erweiterte Funktionen für JSON-Validierung und Zufallszahlengenerierung
Es gibt in PHP 8.3 neue Funktionen für die Validierung von JSON, für die Generierung von Zufallszahlen (inklusive Methoden zur Generierung von Byte-Arrays aus Strings und zur Erzeugung von Gleitkommazahlen). Damit sind laut Expertenmeinungen kryptografisch sichere Zufallszahlen möglich, was die Sicherheit von Anwendungen verbessern kann.
Verbesserungen, die einen Unterschied machen
Neben neuen Funktionen hat PHP 8.3 auch in folgenden Bereichen Verbesserungen erfahren:
Leistung
Die Geschwindigkeit und Effizienz von PHP-Anwendungen wurden weiter verbessert.
PHP 8.3 bietet eine verbesserte Performance durch Optimierungen des JIT-Compilers und der Speicherverwaltung. Dies führt zu schnelleren Webseiten und Anwendungen.
Einige Benchmarks zeigen, dass PHP 8.3 in einigen Anwendungsfällen bis zu 20% schneller sein kann als PHP 8.2.
Sicherheit
Die Sicherheitsmechanismen von PHP wurden verstärkt, was für beruhigendere Anwendungs-Entwicklungen sorgt.
Kompatibilität
Die Kompatibilität mit anderen Sprachen und Frameworks wurde weiter ausgebaut, was PHP als Teil einer heterogenen Entwicklungsumgebung noch attraktiver macht.
Weitere kleine Syntaxverbesserungen sollen zu einem saubereren und konsistenteren Code beitragen.
Wir bei goneo sind stolz darauf, dir diese neueste Version anbieten zu können. Wir freuen uns darauf, gemeinsam die Möglichkeiten zu entdecken, die für nun auch für deine Projekte bereitstehen.
Ausblick
PHP 8.3 bietet eine sichere Planung bis Dezember 2027. Derzeit gibt es noch keine bestätigten Details zu den neuen Funktionen und Verbesserungen in PHP 8.4 und 8.5, da die Planung und Entwicklung dieser zukünftigen Versionen von PHP noch im Gange ist. Gemäß einer Veröffentlichung in der „to do“-Liste auf php.net wird mit PHP 8.4 im November 2024 zu rechnen sein. Zu einem PHP 8.5 finden wir derzeit – Stand Mai 2024 – keine Informationen, ganz zu schweigen von einem PHP 9.
Oberstes Ziel wird ganz offensichtlich weiterhin sein, die Sprache leistungsfähiger, sicherer und benutzerfreundlicher zu machen.
Basierend auf den bisherigen Trends und Diskussionen könnte man einige mögliche Bereiche ableiten, in denen zukünftige Versionen Verbesserungen und neue Funktionen zu erwartet sind:
1. Erweiterte Typisierung: Weitere Verbesserungen und Erweiterungen der Typisierungsmöglichkeiten, um die Code-Sicherheit und -Lesbarkeit zu erhöhen.
2. Asynchrone Programmierung: Verbesserungen in der Unterstützung für asynchrone Programmierung und Concurrency, um die Entwicklung von skalierbaren und performanten Anwendungen zu erleichtern.
3. Verbesserte Fehlerbehandlung Neue und verbesserte Mechanismen zur Fehlerbehandlung und -berichterstattung, um Entwicklern das Debugging und die Fehlervermeidung zu erleichtern.
4. Sicherheitsverbesserungen: Fortlaufende Verbesserungen der Sicherheitsfunktionen, um PHP-Anwendungen gegen moderne Bedrohungen und Schwachstellen abzusichern.
5. Bibliotheken und Framework-Unterstützung: Verbesserte Unterstützung und Integration mit populären Bibliotheken und Frameworks, um die Entwicklung von Applikationen zu vereinfachen und zu beschleunigen.
7. Interoperabilität und Kompatibilität: Verbesserte Interoperabilität mit anderen Programmiersprachen und Technologien, um PHP in multikulturellen Entwicklungsumgebungen noch nützlicher zu machen.
Die PHP-Entwicklung ist ein kollaborativer Prozess, und die Meinungen und Bedürfnisse der Benutzer spielen eine wichtige Rolle bei der Gestaltung der Sprache. Grundsätzlich könnte man als Anwender durchaus Ideen und Vorschläge in Foren, auf Mailing-Listen oder bei PHP-Konferenzen einbringen und so zur Weiterentwicklung von PHP beitragen.
Hier kommen viele Einflüsse zusammen, nicht zuletzt die der Programmierer großer Open-Source-Webanwendungen und Frameworks wie Laravel.
So verwendest du PHP 8.3 bei goneo
Im goneo-Kundencenter lässt sich der zu verwendende PHP-Release umschalten. Die Änderung wird sofort wirksam, kann aber auch auf die vorher genutzte Version zurückgestellt werden.
Pulldownmenü im goneo-Kundencenter zur Änderung der PHP-Version.
Man kann davon ausgehen, dass die aktuellen Updates der beliebten Webanwendungen wie WordPress, Joomla oder Nextcloud PHP 8.3 unterstützen.
Mehr zu PHP und den einzelnen Funktionen findest du im Manual von PHP. Wer sich neu mit PHP beschäftigen möchte, findet vielleicht im PHP-Tutorial einen guten Start.
Wenn du konkrete Fragen zur Einrichtung und Nutzung von PHP 8.3 bei goneo, zögere nicht, sich an unser Support-Team zu wenden. Wir stehen gerne mit Rat und Tat zur Seite. Viele Fragen sind auch in der goneo-Hilfe zu PHP schon beantwortet.
Als Teil der goneo-Familie bist du eingeladen, PHP 8.3 in deinen Projekten zu testen und zu implementieren. Wir sind gespannt auf dein Feedback und Ihre Erfahrungen mit diesen neuen Funktionen und Verbesserungen. Ihr Input ist entscheidend für uns, um zu verstehen, wie wir unsere Dienstleistungen weiter verbessern können, um Ihren Bedürfnissen noch besser gerecht zu werden.
KI ist zur Zeit Hype. Dahinter stecken viele Methoden aus dem Bereich des Maschinellen Lernens (ML). In diesem Umfeld wird gerne Python als Programmiersprache genutzt, oft auch Java. Doch auch wer einen Webhosting-Account betreibt, PHP-Skripte erstellen und ausführen kann, kann ML einsetzen.
In diesem Blogbeitrag wollen wir für User und Userinnen, die gerne auch mal mit PHP experimentieren, eine Anregung geben, PHP ML auf einem Webhosting-Account bei zu nutzen. Wenn du uns deine Erfahrungen mitteilen könntest, wären wir dafür sehr dankbar.
Mit neueren Webhsotingpaket ist der Betrieb von Nextcloud auf goneo kein Problem,
Die aktuelle Version von Nextcloud – das ist eine Webapp für Onlinespeicher- und Teamzusammenarbeit – lässt sich nicht mehr mit MySQL 5, sondern nur mit MySQL 8 betreiben.
Voraussetzung MySQL 8
Bei goneo gibt es Webhosting- und Serverpakete mit MySQL 5 und MySQL 8. Neue Pakete stellen wir mit MySQL 8 zur Verfügung.
Kundeninnen und Kunden, die schon länger eine Webanwendung betreiben, sind jedoch oft noch auf MySQL 5 angewiesen. Welche Optionen du hast, wenn du die aktuelle Nextcloud – Version betreiben möchtest, beschreiben wir in diesem Blogbeitrag.
Wenn du Nextcloud auf goneo installierst, kannst du den Speicherplatz des Webhosting-Pakets als deinen eigenen Online-Speicherplatz nutzen, um Dateien aller Art „in der Cloud“ zu speichern, mit anderen zu teilen oder Dokumente mit anderen Usern gemeinsam zu bearbeiten.
Für Gruppen bis fünf oder sieben Mitgliedern ist eine Installation von Nextcloud eine gute Alternative zu teuren Kollaborationsapplikationen. Zudem ist diese Lösung in Sachen Datenhoheit schwer zu üertreffen. Für maximale Sicherheit kann der Online-Datenbestand verschlüsselt werden.
goneo Tarife und deren Speicherausstattung
Dazu benötigt man ein Webhosting– oder Managed-Server-Paket. Hier findest du die Speicherausstattung der einzelnen Tarife:
goneo bietet dir jetzt Zugriff auf das Tool Composer, mit dem du PHP-Anwendungen unkompliziert installieren kannst.
Webentwickler nutzen PHP in großem Umfang. PHP ist eine vielseitige Skriptsprache, die sich in den letzten Jahren rasant weiterentwickelt hat. Seit den Ursprüngen, die Rasmus Lerdorf damals mit Personal Home Page Tools gelegt hat (hier bei uns im Interview) bis heute zum Release PHP 8 sind ständig neue Funktionen hinzugekommen und PHP hat sich immer weiter ausdifferenziert. So entstanden viele Bibliotheken und Module, mit denen die Kernfunktionen bei Bedarf ergänzt werden können. Das beschleunigt die Entwicklung neuer Anwendungen sehr.
Doch nicht in jedem Kontext braucht man als Entwickler die gleiche PHP-Konfiguration und viele Module wären einfach überflüssig, würde man sie standardmäßig auf einem Server installieren.
Um genau die Module und Bibliotheken bereit zu stellen, die eine PHP-Anwendung braucht, gibt es Tools wie Composer. Composer steht nun auf nahezu allen Servern, mit denen die Websites unserer Kunden ausgeliefert werden, zur Verfügung. Im Webspace befindet sich eine Hilfsdatei namens „.composer“, die notwendig ist, damit das Tool seine Arbeit korrekt verrichten kann.
Mit Composer lassen sich Module effektiv verwalten. In diesem Beitrag werden wir uns ansehen, wo das Composer-Tool für PHP-Anwendungen von großem Vorteil sein kann.
Aller Anfang ist schwer, sagt es sich lapidar. Wer sich in das Thema Webseitenerstellung einarbeiten möchte oder muss, benötigt viel Zeit. Alternativ dazu helfen Agenturen und Webdesigner weiter. Homepagebaukästen versprechen Komfort und kurze Fertigstellungszeiten. Doch der Preis dafür ist ein Verlust an Flexibilität und die Bindung an das spezielle System eines Herstellers. Und dann gibt es noch Open-Source-Webanwendungen wie WordPress.
WordPress, Joomla, Drupal und viele andere Open-Source-Webanwendungen basieren auf PHP. Diese Skriptsprache geht zurück auf Rasmus Lerdorf aus Dänemark, der 1995 eine Sammlung an Scripts als Personal Home Page Tools zusammengestellt hat. Heute schreibt man PHP als PHP Hypertext Preprocessor aus.
Im goneo Podcast-Interview erzählt Rasmus Lerdorf wie er PHP heute sieht und wie die Weiterentwicklung funktioniert.
[podloveaudio src=“https://www.goneoserver.de/podcastgenerator/media/2018-08-24_goneopodcast_51_rasmuslerdorf_php.mp3″] Podcast-RSS | iTunes | Podcast-Generator (Website mit Shownotes) „Im Podcast-Interview: Rasmus Lerdorf, der "Erfinder" von PHP“ weiterlesen