Menü
Developer

Update freigegeben: Was neu ist in PHP 7.3

Das Release der Skriptsprache soll die Performance deutlich verbessern und kommt passend zum Support-Ende von PHP 5.6 Ende Dezember.

Von
vorlesen Drucken Kommentare lesen 43 Beiträge
Was ist neu in PHP 7.3?

Es hat sich mittlerweile eingebürgert, dass immer Anfang Dezember ein neues Release der Skriptsprache PHP erscheint. Das gilt zumindest so, seitdem PHP 7.0 vor vier Jahren erschienen ist. Das gilt nun auch für PHP 7.3, die neueste Version der Skriptsprache, die nun freigegeben wurde. Neben einigen Neuerungen auf Feature-Seite weist PHP 7.3 wohl auch eine Verdopplung bei der Performance gegenüber dem Vorgänger-Release auf, so der bekannte PHP-Mitentwickler Zeev Suraski kürzlich auf der PHP.RUHR 2018, einer in Dortmund ausgerichteten PHP-Konferenz.

Dem Release kommt insofern eine gewisse Bedeutung zu, da am 31. Dezember 2018 der offizielle Support der Sprachentwickler für das veraltete PHP 5.6 endet. Angesichts der Vermutung und aktueller Statistiken, dass noch sehr viele Webseiten mit PHP 5.x betrieben werden und bei ihnen nun wahrscheinlich den Umzug in Richtung PHP 7.x vollzogen wird, werden viele Webseitenbetreiber nun das neue PHP 7.3 verwenden.

Für viele PHP-Entwickler scheint der flexiblere Umgang mit Heredoc- and Nowdoc-Syntax die wichtigste Neuerung zu sein. Gemeint ist zum Beispiel das Einrücken von Nowdoc/Heredoc-Endmarkierungen und das Entfallen der Anforderung, einen Zeilenumbruch zu setzen. Eine weitere Neuerung auf Syntaxebene ist das Setzen von Nachkommata in Funktionsaufrufen. Schließlich ist noch von der Referenzzuordnung mit list() die Rede. Damit lassen sich Variablen per Referenz auch mit dem list()-Konstrukt zuweisen.

Ein weiteres neues Feature ist JSON_THROW_ON_ERROR, ein neues Flag, das die Fehlerbehandlung bei JSON-Erweiterungen verändert. Ebenfalls neu ist die Funktion is_countable. Sie gibt true zurück, wenn die angegebene Variable ein Array-Typ oder eine zählbare Variable ist. array_key_first() und array_key_last(): sind hingegen zwei neue Funktionen, mit denen sich die ersten und letzten Schlüssel in Arrays ermitteln lassen.

Unter den Bereich der Deprecations fallen folgende Features: image2wbmp(), der Einsatz der Flags FILTER_FLAG_SCHEME_REQUIRED und FILTER_FLAG_HOST_REQUIRED im Zusammenspiel mit FILTER_VALIDATE_URL sowie Konstanten, die nicht auf Groß- oder Kleinschreibung achten. Änderungen gibt es darüber hinaus bei den Perl Compatible Regular Expressions, die nun PCRE 2 nutzen, und bei undefinierten Variablen in compact(). Schließlich wurde der Hashing-Algorithmus Argon2i durch Argon2id ersetzt. (ane)