PHP ist heute eine der beliebtesten Skriptsprachen im Web. Laut W3Techs wird PHP von über 79% aller Websites verwendet, die eine serverseitige Programmiersprache verwenden. Das bedeutet, dass fast jede 8. von 10 Webseiten, die Du besuchst, höchstwahrscheinlich PHP in der einen oder anderen Form verwendet, was auch bedeutet, dass PHP nicht ausgestorben ist. Und natürlich spielt es für uns eine sehr wichtige Rolle, da es das komplette WordPress-Ökosystem auf PHP basiert.

Ein Dilemma, vor dem wir heute stehen, ist, dass viele Unternehmen, Entwickler und Hosts in Bezug auf die Unterstützung der neuesten PHP-Versionen in Verzug geraten sind. Einige der folgenden Statistiken könnten dich schockieren. Heute wollen wir einige der Gründe besprechen, warum es so wichtig ist, dass jeder die neuesten PHP-Versionen verwendet, nicht nur aus Sicherheitsgründen, sondern auch aus Gründen der besseren Leistung.

Alte PHP-Versionen

Wie bei jeder Software hat PHP einen Release-Lebenszyklus, der eingehalten werden muss, um die Dinge weiter voranzutreiben und Verbesserungen vorzunehmen.  Jede größere Version von PHP wird in der Regel zwei Jahre nach ihrer Veröffentlichung vollständig unterstützt. Während dieser Zeit werden Fehler und Sicherheitsprobleme behoben und regelmäßig gepatcht.

Unterstützte PHP-Versionen für WordPress

Unterstützte PHP-Versionen für WordPress

PHP 5.6 und PHP 7.0 Ende der Lebensdauer

Seit dem 3. Dezember 2018 ist PHP 7.0 am Ende seiner Lebensdauer. Dies bedeutet, dass es keinen Sicherheits-Support mehr erhält und ungepatchten Sicherheitslücken ausgesetzt sein könnte. In Anlehnung daran erreicht zum 31. Dezember 2018 auch PHP 5.6 sein Lebensende. Dies markiert offiziell das Ende einer Ära für PHP 5, denn die erste Version 5.0 wurde vor 14 Jahren auf den Markt gebracht.

Laut der offiziellen WordPress Statistik Seite sind zum Zeitpunkt, an dem dieser Artikel geschrieben wurde, über 44,6% der WordPress-Benutzer noch mit PHP 5.6 oder niedriger ausgestattet. Wenn Du das mit PHP 7.0 kombinierst, verwenden derzeit satte 60,4% der Benutzer PHP-Versionen, die ab Januar 2019 nicht mehr unterstützt werden.

Noch beängstigender ist es, wenn man sich die Statistiken außerhalb der WordPress-Community ansieht. Laut W3Techs wird PHP 5 derzeit von 62,6% aller Websites verwendet, die PHP verwenden.

Click to Tweet

Dies ist nicht nur unter dem Aspekt der Sicherheit schlecht, sondern auch, weil es immer noch einen großen Teil der WordPress-Seiten gibt, die die zusätzlichen Leistungssteigerungen mit PHP 7 nicht nutzen.

WordPress PHP Versionen Statistik

WordPress PHP Versionen Statistik

Warum die langsame Einführung neuer Versionen?

Der Hauptgrund für die mangelnde schnellere Einführung neuer Versionen liegt höchstwahrscheinlich an verschiedenen Faktoren:

  • Der Hauptgrund, den wir hier sehen, wenn wir Webseiten migrieren, ist, dass Geschäftsinhaber ihre PHP-Version nicht kennen oder sich nicht darum kümmern. Dies ist natürlich in einigen Fällen verständlich, da wir nicht erwarten, dass jeder das weiß.  Oftmals liegt diese Verantwortung beim Entwickler, der Agentur oder dem Host.
  • Es dauert einige Zeit, bis die Entwickler ihren Code aktualisieren, um neuere PHP- Versionen zu unterstützen. Dazu gehören auch solche, die Webseiten, Themes, Plugins usw. entwickeln.
  • Es erfordert nicht nur Aufwand und Zeit für die Aktualisierung des Codes, sondern auch umfangreiche Tests, um die Kompatibilität sicherzustellen. Allein das WordPress-Repository verfügt über mehr als 49.000 Plugins!
  • Viele WordPress-Hosts haben sich geweigert, aktualisierte PHP-Versionen herauszubringen, da dies zu zusätzlichen Support-Tickets führen könnte, wenn eine Webseite dadurch kaputt geht. Als WordPress Host verstehen wir das definitiv, aber nach unserer Erfahrung ist dies typischerweise umgekehrt. Viele der Probleme, die wir sehen, sind auf Probleme zurückzuführen, die durch ältere PHP-Versionen verursacht werden.
  • Der Entwickler oder die Agentur könnten in einem Interessenkonflikt verwickelt sein, wenn er mit einem Kunden und anderen Anwendungen von Drittanbietern zu tun hat, bei der er nicht bereit ist Ressourcen für das Updaten bereitzustellen.

Nichtsdestotrotz ist es jedoch immer noch keine Entschuldigung, auf PHP-Versionen zu laufen, die veraltet sind, nicht unterstützt werden und Deine WordPress-Seite tatsächlich verlangsamen. Die gute Nachricht ist, dass einige Fortschritte erzielt werden. Jordi Boggiano, Mitbegründer von Private Packagist, erstellt jedes Jahr einen Bericht über die PHP-Nutzungsstatistik. Und wie Du unten sehen kannst, gibt es einige Fortschritte in die richtige Richtung. Dies ist natürlich nur eine exemplarische Untermenge von „Composer-Installationen“, aber es ist trotzdem interessant, die Änderungen zu sehen.

PHP-Nutzungsstatistik - erstellt von Jordi Boggiano.

PHP-Nutzungsstatistik – erstellt von Jordi Boggiano.

Gründe, warum Du Deine PHP-Versionen aktualisieren solltest

Schau Dir einige der folgenden Gründe an, warum Du über ein Update nachdenken solltest, wenn Du es noch nicht getan hast.

1. Sicherheit

Einer der wichtigsten Gründe für ein PHP-Update ist es, sicherzustellen, dass Du eine Version verwendest, die vollständig unterstützt und regelmäßig auf Sicherheitsschwachstellen gepatcht wird. PHP 5.4 wurde seit 2015 nicht mehr gepatcht. Und PHP 5.5 wurde seit 2016 nicht mehr gepatcht. Es ist jedoch wichtig zu beachten, dass einige Betriebssystemhersteller immer noch ältere Versionen von PHP aktualisieren, wenn es in deren System enthalten ist.

Laut CVE Details war 2016 eines der schlechtesten Jahre für PHP-Sicherheitsschwachstellen, mit über 100 gemeldeten Problemen. Dazu gehörten DoS, Codeausführung, Overflow, Speicherbeschädigung, XSS, Verzeichnisdurchquerung und Bypass. 2017 war das drittgrößte Jahr seit 2000 mit über 40 Schwachstellen.

PHP-Sicherheitsschwachstellen pro Jahr

PHP-Sicherheitsschwachstellen pro Jahr

Sogar PHP selbst gibt Feedback, wie man auf dem Laufenden bleibt:

PHP steht, wie jedes andere große System, unter ständiger Beobachtung und Verbesserung. Jede neue Version enthält oft sowohl große als auch kleine Änderungen, um die Sicherheit zu erhöhen und Fehler, Konfigurationsfehler und andere Probleme zu beheben, cdie sich auf die allgemeine Sicherheit und Stabilität Deines Systems auswirken. Wie bei anderen Skriptsprachen und Programmen auf Systemebene ist der beste Ansatz, häufig zu aktualisieren und sich über die neuesten Versionen und deren Änderungen zu informieren. PHP, Keeping Current

2. Leistung

Mit der Veröffentlichung von PHP 7.2 und PHP 7.3 kamen enorme Leistungssteigerungen! Die Leistungssteigerungen sind sogar so groß, dass Du anfangen solltest die PHP-Version zu wechseln bevor Du Dich mit kleineren Optimierungen rumschlägst. Die folgenden Benchmarks zeigen signifikante Leistungssteigerungen mit PHP 7 gegenüber seinen vorherigen Versionen. PHP 7 ermöglicht es dem System, doppelt so viele Anfragen pro Sekunde im Vergleich zu PHP 5.6 bei fast der Hälfte der Latenzzeit auszuführen.

php 5-6 vs php 7

PHP-Benchmarks von Rasmus Lerdorf, PHP Fluent Talk

Wir haben auch unsere eigenen PHP-Benchmarks durchgeführt. Und ähnlich wie bei den obigen Benchmarks haben wir gesehen, dass PHP 7.3 fast dreimal so viele Transaktionen (Requests) pro Sekunde ausführen kann wie PHP 5.6. PHP 7.3 ist auch im Durchschnitt 9% schneller als PHP 7.2.

WordPress 5.0 PHP-Benchmarks

WordPress 5.0 PHP-Benchmarks

  • WordPress 5.0 PHP 5.6 Benchmark: 91,64 req/sek
  • WordPress 5.0 PHP 7.0 Benchmark-Ergebnisse: 206.71 req/sek
  • WordPress 5.0 PHP 7.1 Benchmark-Ergebnisse: 210,98 req/sek
  • WordPress 5.0 PHP 7.2 Benchmark-Ergebnisse: 229.18 req/sek
  • WordPress 5.0 PHP 7.3 Benchmark-Ergebnisse: 253.20 req/sek 🏆

Christian Vigh veröffentlichte auch einen PHP-Leistungsvergleich, in dem er feststellte, dass PHP 5.2 400% langsamer war als PHP 7.

CPU-Benchmark-Ergebnisse

Vergleich der reinen CPU-Benchmark-Ergebnisse

3. Support

Der Support ist ein weiterer Grund, warum Du die neuesten und unterstützten PHP-Versionen verwenden solltest. Oftmals können Entwickler von Plugins und Themes den Support bisher t zwar nur für ältere Versionen versichern. Ein Teil davon ist auf Zeitdruck zurückzuführen, da die Entwickler keine Zeit haben, die Kompatibilität zu testen. Früher oder später wird es aber zu Problemen führen, die man zum Beispiel in WordPress-Foren nachlesen kann. Hier ist ein häufiger Fehler, der typischerweise durch eine ältere PHP-Version verursacht wird:

Parse error: syntax error, unexpected '' (T_VARIABLE), expecting function (T_FUNCTION) in /pub/file.php on line xxx

Du kannst in den WordPress-Foren nach „unexpected T_Function“ suchen und es werden über 2.000 Threads zurückgegeben, viele mit Ergebnissen aus den letzten Tagen. Hier sind nur ein paar aktuelle, die alle darauf zurückzuführen sind, dass alte Versionen von PHP laufen:

Viele dieser Threads werden geöffnet, da sie auf veralteten Versionen von PHP laufen. Dasselbe gilt jedoch auch für Threads, die aufgrund von Kompatibilitätsproblemen mit PHP 7 offen sind. Das zeigt, dass die WordPress-Entwicklungsgemeinschaft immer noch versucht, sich über neuere Versionen von PHP zu informieren.

4. Neue Features für Entwickler

Die meisten WordPress-Entwickler würden es vorziehen, nur an der neuesten Version von PHP zu arbeiten, wenn sie könnten, einfach wegen der Tatsache, dass es so viele neue Funktionen zwischen PHP 5.2 und PHP 7.3 gegeben hat, die alle unterstützt werden müssen. Einige Änderungen mit PHP 7 und 7.3 beinhalten:

  • Kombinierter Vergleichsoperator
  • Null-Koaleszenzoperator
  • Hinweis auf neue Typen
  • Anonyme Klassen
  • Nullable Typen
  • Wiederholbare und ungültige Rückgaben
  • Multi-Catch-Exception-Handling
  • Schlüssel, die in Listen verwendbar sind
  • Mehr negative String Offsets
  • Zahlenoperatoren und fehlerhafte Zahlen
  • HTTP/2 Server Push

Es macht keinen Spaß, alte Versionen von irgendetwas zu unterstützen. Leider müssen viele Entwickler aber eine Vielzahl von Versionen unterstützen.

Stelle sicher, dass Dein Host die neuesten PHP-Versionen unterstützt

Es hat eine Weile gedauert, aber die offiziellen WordPress.org-Anforderungen empfehlen nun einen Host mit PHP Version 7.3 oder höher.

Yoast hat gerade erst einen großartigen Artikel mit dem Titel „Whipping Your Host Into Shape“ veröffentlicht. In dem Artikel geht Joost de Valk im Detail darauf ein, dass das eigentliche Problem darin besteht, dass Hosting-Provider die neue Version nicht schnell genug übernehmen, und selbst wenn sie es tun, ermutigen sie die Benutzer nicht zum Upgrade. Yoast wird etwas dagegen unternehmen. Ab Yoast SEO 4.5 werden sie anfangen, einen Hinweis auf dem WordPress Dashboard für Webseiten anzuzeigen, die unter PHP 5.2 laufen. Dieser Hinweis wird groß, hässlich und auffällig sein, damit man seine Version aktualisiert.

PHP 7 is the future (and boy is it nice and fast). 🚀 -- Joost de Valk via @yoast @kinsta Click to Tweet

Wenn wir Yoast einen High Five geben könnten, würden wir das auf jeden Fall tun! Kinsta unterstützt die neuesten stabilen Versionen von PHP 7.2 und 7.3.

Tatsächlich ist jede neue WordPress-Installation hier bei Kinsta auf PHP 7.3 voreingestellt. Und PHP 5.6 ist die Mindestversion, die wir in unserer Umgebung zulassen.

Kinsta’s Timeline zum Auslaufen alter PHP-Versionen

Am 9. Dezember 2019 werden wir die PHP-Versionen 5.6, 7.0 und 7.1 aus unserem MyKinsta Dashboard entfernen. Für Websites, die eine dieser Versionen von PHP verwenden, müssen Sie auf mindestens PHP 7.2 aktualisieren.

Wir werden die Umstellung auf PHP 5.6, 7.0 und 7.1 für Kinsta-Kunden in Live-Umgebungen am 1. Oktober 2019 deaktivieren. Sie können in Live-Umgebungen zu PHP 7.2 oder 7.3 wechseln, aber nicht zurück zu PHP 5.6, 7.0 oder 7.1. Diese Änderung gilt für bestehende Websites sowie für Websites, die am oder nach dem 1. Oktober 2019 erstellt wurden.

Die Staging-Umgebungen sind am 1. Oktober nicht betroffen, um sicherzustellen, dass Sie die Tests fortsetzen können.

Websites mit PHP 5.6, 7.0 oder 7.1 werden ab dem 9. Dezember 2019 automatisch auf PHP 7.2 aktualisiert.

Wir entschuldigen uns für die Unannehmlichkeiten, die Ihnen dadurch entstehen können. Wir sind bestrebt, die schnellste und sicherste Umgebung auf dem Markt zu betreiben, und das bedeutet, dass wir sicherstellen müssen, dass alle Websites Technologien verwenden, die aktiv Sicherheitsupdates erhalten.

Schauen Sie sich unsere ausführliche Anleitung mit Schritt-für-Schritt-Anleitungen an, wie Sie PHP auf Ihrer WordPress-Seite sicher aktualisieren können.

Überprüfe Deine aktuelle Version von PHP

Vielleicht weißt Du nicht, auf welcher PHP-Version Deine WordPress-Seite gerade läuft. Schaue Dir diese verschiedenen Möglichkeiten unten an, um es herauszufinden.

1. PHP-Version mit Pingdom prüfen

Eine der einfachsten Möglichkeiten, um zu überprüfen, welche PHP Version Du verwendest, ist die Verwendung eines Tools wie Pingdom oder Google Chrome Devtools. Der erste HTTP-Request-Header zeigt Dir typischerweise die PHP Version an.

PHP Version mit Pingdom Testen

PHP Version mit Pingdom Testen

Dies setzt voraus, dass der Host den X-Powered-By-Header-Wert nicht ändert. Einige könnten dies aus Sicherheitsgründen entfernen. Wenn dies der Fall ist, sehen Sie möglicherweise Ihre PHP-Version nicht, in diesem Fall müssen Sie eine der anderen unten aufgeführten Optionen verwenden. Oder Sie können sich jederzeit an Ihren Host wenden und fragen.

2. PHP-Version in WordPress überprüfen

Wenn Sie WordPress 5.0 oder höher verwenden, können Sie die PHP-Version unter dem Tool „Site Health“ sehen.

WordPress Site Health Tool PHP version

WordPress Site Health Tool PHP version

3. PHP-Version per Datei prüfen

Du kannst Deine PHP-Version auch überprüfen, indem Du eine Datei per FTP auf Deinen Server hochlädst.

Schritt 1

Erstelle eine leere Datei namens phpinfo.php. Füge in diese Datei den folgenden Inhalt ein:

<?php
echo 'Current PHP version: ' . phpversion();
?>

Schritt 2

Lade die Datei in das Stammverzeichnis Deiner WordPress-Seite hoch.

Hochladen der phpinfo.php-Datei

Hochladen der phpinfo.php-Datei

Schritt 3

Suche dann nach dem Speicherort Deiner Datei domain.com/phpinfo.php. Du solltest dann eine Anzeige Deiner aktuellen PHP-Version sehen.

PHP Version im Browser testen

PHP Version im Browser testen

Was sollten weniger technisch versierte Anwender oder solche ohne Budget tun?

Wir wissen, dass es immer noch Tausende von WordPress-Seiten gibt, die mit neueren PHP-Versionen inkompatibel sind, sei es aufgrund eines alten Plugins oder Designs. Dies kann zu einer Herausforderung für die weniger technisch versierten Benutzer oder diejenigen ohne Budget werden. Was ist nun die beste Vorgehensweise? Wir hier bei Kinsta haben es ständig mit Kunden zu tun, die mit PHP-Versionen zu uns kommen, die das Lebensende erreicht haben.

Hier sind einige Empfehlungen:

  1. Dies sollte eine Selbstverständlichkeit sein, aber aktualisiere Deine Plugins und Themes immer auf die neueste Version.
  2. Wende Dich an den Entwickler des Plugins oder Themas und bitte ihn, die Unterstützung für PHP 7.2 oder 7.3 (oder die aktuelle Version, auf die Du aktualisieren möchtest) hinzuzufügen/zu korrigieren. Wir geben unseren Kunden Vorlaufzeit, bevor wir PHP-Versionen auslaufen lassen, damit sie bei Bedarf Zeit haben, sich darauf vorzubereiten. Dies ist besonders wichtig für diejenigen, die kein Budget haben, um einfach mal einen Entwickler einzustellen.
  3. Finde ein alternatives Plugin, das die gleiche Funktionalität bietet und mit der PHP-Version kompatibel ist. Dank des riesigen WordPress-Repositorys und der Tausenden von Premium-Plugins und -Themes da draußen können wir fast garantieren, dass es für alles eine Alternative gibt.
  4. Für diejenigen, die über das Budget verfügen, beauftrage einen WordPress-Entwickler, um das Problem zu beheben.

Wie man PHP aktualisiert

Bist Du bereit für ein Update? Großartig, aber eines der allerersten Dinge, die Du tun solltest, ist, Deine Webseite vorher zu testen, um die Kompatibilität sicherzustellen. Du kannst Deine  WordPress-Seite lokal oder besser noch, in einer Staging-Umgebung testen, da diese eher einer Live-Produktionsseite ähnelt. Es ist besser, vorher sicher zu sein, als im Nachhinein handeln zu müssen.

Wenn Du Kinsta-Kunde bist, kannst Du mit einem einzigen Klick eine Stagingumgebung erstellen. Ändere anschließend die PHP-Version über das Dashboard und starte den Test.

WordPress Staging Umgebung

WordPress Staging Umgebung

Und denke daran, wenn Du von einer alten PHP-Version auf eine neuere wechselst, solltest Du auch die WordPress-Installation updaten. Eine neue Version von PHP mit einer 2 Jahre alten Version von WordPress wird wahrscheinlich nicht gut enden. Sobald Du Deine Webseite getestet hast und bereit bist, PHP zu aktualisieren, findest Du hier ein paar Ressourcen um schnell wieder „on track“ zu sein.

Schauen Sie sich unsere ausführliche Anleitung mit Schritt-für-Schritt-Guide an, wie Sie PHP auf Ihrer WordPress-Seite sicher aktualisieren können.

PHP mit Kinsta aktualisieren

Wenn Sie Kinsta-Kunde sind, können Sie die Version von PHP leicht ändern, indem Sie auf Ihre Website klicken, auf „Tools“ gehen und eine andere PHP-Engine auswählen. Wir haben derzeit PHP 5.6, 7.0, 7.1, 7.2 und 7.3 verfügbar. Hinweis: Wir haben die Ausstiegsdaten für PHP 5.6 bis 7.1 oben veröffentlicht

Das updaten der PHP Version einer WordPress Seite

Das updaten der PHP Version einer WordPress Seite

PHP im cPanel aktualisieren

Wenn Dein Host cPanel verwendet, hat er höchstwahrscheinlich bereits eine Option zur Verfügung, um Deine PHP Version zu ändern. Melde Dich einfach bei cPanel an und klicke unter der Kategorie „Software“ auf „PHP-Version auswählen“.

PHP-Version in cPanel auswählen

PHP-Version in cPanel auswählen

Du kannst dann die Dir zur Verfügung stehenden PHP-Versionen auswählen, die Dein Host unterstützt.

PHP 7 in cPanel

PHP 7 in cPanel

PHP manuell auf dem Server aktualisieren

Wenn Du Deinen eigenen Server verwaltest, empfehlen wir Dir, die offizielle PHP-Installationsdokumentation zu lesen, da die Anweisungen je nach Betriebssystem variieren. Hier werden Dich die Änderungen mit Funktionen, Klassen, Wrappern, Erweiterungen, Modulen etc. interessieren. Hier sind ein paar Links zu den Migrationsleitfäden

Zusammenfassung

Spätestens jetzt ist es an der Zeit, über ein Upgrade auf PHP 7.3 nachzudenken, wenn Du es noch nicht getan hast. Nicht nur, weil Du mit einer unterstützten Software arbeiten möchtest, sondern auch, weil Dir danach Leistungsvorteile garantiert sind! Wenn Dein aktueller WordPress Host noch nicht PHP 7.3 unterstützt, empfehlen wir Dir dringend, nach einem neuen Hoster zu suchen. Und dasselbe mit Themes und Plugins, denn wenn der Entwickler noch keinen Patch veröffentlicht hat, ist es vielleicht an der Zeit, eine Alternative zu finden.

Bist Du kürzlich auf PHP 7 umgestiegen? Wir würden uns freuen, wenn wir Deine Gedanken in den Kommentaren erfahren könnten. War es ein einfacher Übergang? Oder hast Du immer noch Probleme?

51
Mal geteilt