Was ist neu in PHP 7.4?

Du kannst dich ab dem 28.11.2019 auf die komplett fertiggestellte, neue und kleinere Version PHP 7.4 freuen. Die neue und verbesserte Version bringt einige Vorteile mit sich, die für Dich spannende Funktionen bereithält. Du kannst von einer vereinfachten Bedienbarkeit ausgehen, denn die Fehler aus der Vorgängerversion sind mit dieser Ausführung behoben.

Wofür wird PHP 7.4 verwendet?

PHP ist eine Programmiersprache, die in WordPress, z.B. für Werbemaßnahmen gesprochen wird. PHP steht für Hypertext Preprocessor und ist die am meisten verwendete Programmiersprache im World Wide Web. Mittlerweile wird PHP für ca. 79% aller weltweit generierten Websites verwendet.

Wo kann man PHP 7.4 downloaden?

Wenn Du die neueste Version herunterladen möchtest, dann besuche die PHP Website. Dort sind die jüngsten Ausführungen freigestellt. Bei unseren Webhosting Tarifen ist php 7.4 sowie die anderen Versionen bereits enthalten.

Welche Neuerungen hält die Version PHP 7.4 bereit?

Der Spread Operator – Bessere Darstellung im Array Ausdruck

Anstatt der Funktion array_merge, wird zukünftig ein Spread Operator mit einer Sprachstruktur ausgestattet, der konstante Arrays bereitstellt. Die Performance wird nachhaltig verbessert. Während die array_merge Funktion nur Arrays unterstützt hat, wird die neue Version PHP 7.4 alle Objekte, die durchquerbar sind, unterstützen können. Du kannst Dir die Vorgänge zum Array-Ausdruck in der RFC Dokumentation anschauen und alle Codes in Erfahrung bringen, die Dir das Entpacken von Argumenten im Array Ausdruck näher beschreiben. Wenn Dir Arrays aus einer bestimmten Funktion zurückgegeben werden, kannst Du diese wieder in ein neues Array entpacken.

Vorteile des Spread Operators:

Die neue Version PHP 7.4 mit dem integrierten Spread Operator ermöglicht es Dir, das selbe Array mehrfach erweitern zu können. Auch die Syntax des Operators kannst du innerhalb des Arrays anwenden. Egal, an welcher Stelle des Arrays Du die Syntax integrieren möchtest, Du kannst die Elemente vor oder auch nach dem Operator hinzufügen.

Programmiererin
(© Gorodenkoff stock.adobe.com)

Die Arrow Funktion 2.0 Kurzversion in PHP 7.4

Bislang gelten die anonymen Funktionen von PHP als besonders Wartungsintensiv und als schwer zu behandeln. Innerhalb der RFC Dokumentation wurde dieses Thema behandelt und mit der neuen Version PHP 7.4, zu einer kürzeren und klardefinierten Syntax. Ziel der Einführung ist es, die PHP Codes bereinigen zu können. Du kannst nun, mit der neuen Version PHP 7.4 präzisere Syntax generieren und bereits bestehende Funktionen umschreiben. Anonyme Funktionen, sogenannte “Closures” werden mit der neuen Arrow Functions in PHP 7.4, anhand des Werts erfasst. Hierbei wird von der Bindung nach Wert gesprochen. Die geschriebenen Zeilen verkürzen sich und können in einer einzigen Zeile zusammengefasst werden.

Die Vorteile der Arrow Funktion, bzw. der Syntax Verbesserung:

Mit Hilfe der präziseren Sprache kannst Du Deine Codes lesbarer gestalten und besser warten. Weiterhin kannst Du mit der Funktion, bestimmte Parametertypen, Argumente, Standartwerttabellen, Rückgabetypen und variadische Funktionen, mit Hilfe der Referenzfunktion übergeben.

Der Assignment-Operator – Null Coalescing – Koaleszenzoperator.

Bislang wurden nichtexistierende Anforderungsparameter mit einem Standartwert ausgestattet. Bei längeren Variablennamen kann der Code schwer zu warten und zu aktualisieren sein. Um die Handhabung der Codierung zu Vereinfachen wurde folgendes Vorgeschlagen: Es kommt der null coalescing assignment operator zum Einsatz. Dieser Koaleszenzoperator ermöglicht es, einen intuitiven Code zu generieren. Ist z.B. der linke Wert des Parameters gleich Null, dann kann der rechte Parameter verwendet werden. Der Koaleszenzoperator wirkt hier nicht nur als Vergleichselement, sondern stellt auch eine Zuordnungsfunktion dar.

Die Vorteile des Null Coalescing Operators:

Du kannst mit Hilfe dieser Eigenschaft, Deine Codes besser verwalten. Du kannst intuitive Codes erstellen und den Koaleszenzoperator als Vergleichs- und Zuordnungselement verwenden.

Typisierende Eigenschaften 2.0

Seit PHP 5 auf dem Markt ist, sind auch die Typhinweise verfügbar. Mit Hilfe der Argumenttypdeklaration ist es möglich, typisierte Variablen anzugeben. Diese werden dann im nächsten Zug an die Funktion oder an eine Klassenmethode weitergegeben. Mit der neuen Version in PHP 7.4 werden typisierte Eigenschaften noch besser unterstützt. Du kannst erstklassige Property Type Declarations anhängen.

Der Vorteil der Typisierung:

Alle Typen werden unterstützt, mit zwei Ausnahmen “void” und “callable”. Diese Entscheidung wurde mit der RFC Dokumentation begründet. Der Typ Void ist nicht wirklich von großem Nutzen für den Anwender und ist unklar Strukturiert. Der Callable Typ wird nicht weiter unterstützt, da das Verhalten des Typs stark vom definierten Kontext abhängig ist. Mit den neuen Typisierungsvorgängen kannst Du Standardeigenschaften platzieren, wenn diese mit dem jeweiligen Eigenschaftentyp übereinstimmen.

Weak References – Schwache Objekte behalten

Diese Erweiterung ermöglicht es Dir, eine bestimmte Objektreferenz beizubehalten. Schwache Referenzen wurden bislang durch die Funktion pecl-weakref, unterstützt.

Kovarianzen und Kontravarianzen werden künftig zugelassen

Wenn von Kovarianzen die Rede ist, sollte man sich kurz vor Augen halten, was es genau damit auf sich hat. Spricht man von einer Varianz, dann umschreibt man eine Klasseneigenschaft, eine Klassenhirarchie. Die verschiedenen Typen des Typenknstruktors wirken sich unterschiedlich auf die Subtypen aus. Es gibt verschiedene Typenkonstruktoren, im Allgemeinen unterscheidet man, die Invarianten Typen, die Kontravarianten und die Kovarianten Typen. Man spricht von einer Invarianten Typisierung, wenn der Typ des Supertyps, sich selbst einschränkt. Von einer Kovarianten Typisierung wird gesprochen, wenn die Typenreihenfolge bestehen bleibt. Kontravariant sind die Typen wenn diese in der Reihenfolge umgekehrt werden.

Derzeit arbeitet PHP meistens mit invarianten Typen und Rückgabeparametern. Mit der neuen Version PHP 7.4 sollen in Zukunft auf kovariante und kontravariante Parameter eingefügt werden können. In der RFC Dokumentation kannst Du verschiedene Beispielcodierungen nachlesen.

Die Preloading Funktion

Diese Funktion bringt Dir eine enorme Leistungsverbesserung und optimiert die Prozesse. Wenn von Preloading die Rede ist, dann spricht man von der Prozessoptimierung bei Ladungsvorgängen aus Bibliotheken oder Frameworks. Der Entwickler beschreibt den Vorgang wie folgt: Noch bevor der Anwendungscode beim Serverstart ausgeführt wird, kann ein festgelegter Satz von PHP Dateien in den Speicher geladen werden. Der Vorteil ist, dass der Datensatz mit dem gesamten Inhalt, permanent verfügbar ist. Die Datensätze beinhalten Funktionen und Klassifizierungen und sind für nachfolgende Anfragen immer vorhanden. Mit Hilfe der Vordatenspeicherung kann eine Anfrage wesentlich schneller bearbeitet werden. Es gibt allerdings einen Nachteil, den Du unbedingt berücksichtigen solltest. Wenn Du vorgeladenen Datensätze im Opcache speicherst, bleiben diese dort für immer gespeichert, auch selbst dann, wenn ein Neustart des Servers vorgenommen wird.

Benutzerdefinierte Objekte in Serie

Wer bislang mit PHP 7 gearbeitet hat, der kennt die Serialisierungsvorgänge von Objekten. Du hast bisher zwei Methoden zur Auswahl, entweder die magische sleep () und wakeup () Methode, oder die Serializable Methode. Die Entwickler beklagen, dass beide Methoden mit Komplikationen behaftet sind und haben die Thematik in der neuen Version PHP 7.4 aufgegriffen. Eine häufige Schwierigkeit bestand darin, dass die Codes meist unzuverlässig waren oder auch im Laufe der Zeit immer komplexer wurden. Dadurch waren Sie schwer zu bearbeiten und zu verwalten. Nun soll das Problem in der Version 7.4 endgültig behoben werden. Mit zwei neuen Methoden kannst Du Kombinationen ausführen.

Verwende _serialize () oder _unserialize () und kombiniere die Mechanismen miteinander.

Prioritäten Verändern innerhalb des Verknüpfungsoperators

Arithmetische Vorgänge werden in der derzeitigen 7.0 Version mit “+” und “-2” beibehalten. In der erneuerten Version sollen zukünftig Additionen und Subtraktionen, stets vor der Zeichenkette angestellt werden. Die tatsächliche Änderung der Priorität wird aber erst in der Version 8.0 verfügbar sein.

Coder
(© deagreez stock.adobe.com)

Verwerfungen

Tenäre Operatoren sind in PHP links assoziativ ausgerichtet. Wenn ein Programmierer zwischen mehreren Sprachen hin und her wechseln muss, kann der Vorgang einen verwirrenden Eindruck hinterlassen. Laut der neuen Version, sollen linksassoziative tenäre Operationen verworfen werden und die Entwickler werden dazu angehalten die Klammern zu verwenden. Im Programm PHP 7.4 werden in Zukunft alle verschachtelte tenäre Operationen, die ohne die Klammersetzung abgegeben werden mit einer Verfallswarnung versehen. In der 8er Version werden dann Laufzeitfehler ausgegeben, wenn die Klammer nicht ordnungsgemäß gesetzt ist.

Warum sollte man die neue Version PHP 7.4 ausprobieren?

Die neue Version des Programms PHP 7.4, die ab dem 28. November 2019 freigeschaltet ist, solltest Du unbedingt testen, denn die Leistungsfähigkeit, die Lesbarkeit und die Wartungseinheiten der Codes wurde stetig verbessert.

Welche Vorteile hat man im Gesamtüberblick von der neuen Version?

Im Allgemeinen kannst Du von folgenden Vorteilen profitieren, wenn Du die neueste PHP 7.4 Version downloadest: Typisierte Eigenschaften werden künftig unterstützt, Pfeilfunktionen wurden verbessert, Du kannst kovariante Returns umsetzen und erstelle gegenläufige Parameter. Mit Hilfe der neuen Funktionen werden Schwachstellen-Referenzen besser ausgeglichen und unterstützt, zudem hilft Dir der Spread Operator in Array Ausdruck, eine präzise Syntax zu integrieren.

Warum sollte man bereits bestehende Versionen aktualisieren?

Wenn Du bereits eine alte Version auf der WordPress Seite generiert hast, ist es ratsam, diese zu aktualisieren. PHP hat sich einen Zeitplan vorbehalten, der sich an die Pflege und Sicherheitsaktivierung noch für zwei Jahre nach der Neueinführung bindet. Du solltest die Aktualisierung zeitnah vornehmen, um die Umstellung nicht zu versäumen. Wenn Du nachhaltig und datensicher arbeiten möchtest, dann solltest Du die alte PHP Version von Deinen WordPress Seiten entfernen.

Wenn Du die PHP Version nicht erneuerst, dann hat ist die Leistungsfähigkeit und Geschwindigkeit der Seiten stark beeinträchtigt. Betrachtet man die Nutzerzahlen von PHP genau, dann ist auffällig, dass immer noch viele Anwender mit der alten 5 er Version arbeiten. Es ist dringend an der Zeit, eine Aktualisierung vorzunehmen um zum einen die Nutzerfreundlichkeit zu gewährleisten und die Datensicherung ordnungsgemäß sicherzustellen.

Das kann PHP 7.4, wenn man das PHP 5.6 miteinander vergleicht

Wenn Du immer noch die Version 5.6 verwendest, dann hast Du erhebliche Leistungseinschränkungen. Mit PHP 7 ist es möglich, doppelt so viele Anfragen pro Sekunde zu bearbeiten. Die veralteten Versionen arbeiten deutlich langsamer als die optimierten Programme. Der Speicherverbrauch ist auch um ein Vielfaches gesenkt worden. Arbeitest Du in WordPress mit einer alten PHP Version, kannst Du wesentlich weniger Anfragen und Transaktionen pro Sekunde ausführen.

Code auf Monitor
(© Michael Zech stock.adobe.com)

Wie kann man herausfinden, welche PHP Version kompatibel ist?

Wenn Du nicht mehr genau weißt, welche Version Du aktuell am Laufen hast, dann kannst Du das, über Pingdom oder Google Chrome Devtools herausfinden. Bevor Du eine neue Version integrierst, solltest Du in Erfahrung bringen, ob Deine WordPress Seiten mit den neuen PHP Versionen kompatibel sind. Innerhalb des ersten http Request-Headers wird dir die aktuelle Version angegeben. Wird Dir die Version trotz der Vorschläge nicht angezeigt, kann es mitunter daran liegen, dass der Host den Wert nicht abändert. Aus Sicherheitsgründen wird der Wert aber häufig durch Voreinstellung abgeändert. Wenn dies der Fall ist dann kannst Du alternativ ein Plugin installieren, das Dir eine Serverinformation in der Fußzeile des WordPress Admin Dashboards bereitstellt. Du kannst zudem eine FTP Datei hochladen, um die Version herauszufinden.

Anleitung – So testest Du Deine WordPress Site auf Kompatibilität

Erstelle eine Staging Site, um die Anwendungen zu testen. Du kannst mit einer Staging-Site die Kompatibilität überprüfen, diese musst Du allerdings erst erstellen. Die Site ist stellt die Deine Website Live dar, ohne Deine tatsächliche Live-Site negativ zu beeinflussen. Du kannst somit ungehindert die neuen PHP Versionen testen.

Welche Funktionen werden mit der neuen Version PHP 7.4 nicht bereitgestellt?

Viele Anwender von PHP haben bereits mit dieser Version auf einen JIT-Compiler gehofft. Dieser sollte Just-in-Time arbeiten, indem er einen Zwischencode nutzt. Dieser Code fügt sich in die Maschinenlaufzeit ein und wird kompiliert. Der JIT-Compiler sollte direkt über die CPU abgewickelt werden, diese neue Technik ist allerdings noch nicht fertiggestellt und wird mit der nachfolgenden Generation veröffentlicht. Alle Programme, die mit einer CPU angenäherten Codierung arbeiten, werden durch den Vorgang erheblich beschleunigt.

Fazit:

Die neue Version PHP 7.4 erleichtert die Programmierung enorm. Du profitierst von einer erhöhten Geschwindigkeit und von einer einfacheren Handhabung und Wartung. Wenn Du sichergehen möchtest, dass Deine WordPress Seiten leistungsfähig und sicher vor Hackerangriffen sind, dann solltest Du eine Aktualisierung nicht versäumen. Du erhältst die neueste Version auf der PHP Website und kannst Dir die vielen Vorteile zu Nutzen machen.