PHP 7.3 in allen Tarifen verfügbar
In allen unseren Webhosting- sowie den Server-Tarifen ist ab sofort die neue Version PHP 7.3 verfügbar und kann regulär im Auswahlmenü für Ihre Domains aktiviert werden. Neben zahlreichen Neuerungen an Funktionen und Klassen wurde auch in einzelnen Bereichen die Performance verbessert. So wurde z.B. in der Multibyte-String-Erweiterung die Leistung der Konvertierungsfunktionen deutlich gesteigert.
PHP 7.3 steht bei uns mit einkompiliertem APC User Cache (APCu) in der aktuellen Version 5.1.16 zur Verfügung. Auch der ionCube Loader kann genutzt werden, allerdings weisen wir daraufhin, dass dieser zum Zeitpunkt des Erscheinens von PHP 7.3 nur in einer Beta-Version ausgeliefert wurde.
PHP 7.3.0 (cli) (built: Dec 11 2018 16:17:29) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies
with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.3.0, Copyright (c) 2002-2018, by ionCube Ltd.
with Zend OPcache v7.3.0, Copyright (c) 1999-2018, by Zend Technologies
Geänderte Syntax und neue Funktionen
– Aufrufe von Funktionen und Methoden dürfen nun ein abschließendes Komma enthalten.
– Die Syntax für Heredoc und Nowdoc wurde gelockert. Bis PHP 7.2 mussten die abschließenden Markierungen für Heredoc und Nowdoc in einer neuen Zeile zu Beginn erscheinen. Ab PHP 7.3 dürfen diese Markierungen nun auch eingerückt sein.
– Mit den neuen Funktionen “array_key_first()” und “array_key_last()” ist das Auslesen des ersten bzw. letzten Schlüssels eines Arrays nun von Haus aus möglich.
– Die Funktion “is_countable()” liefert zurück, ob ein Objekt zählbar ist.
– Bisher waren Referenzzuweisungen in der Funktion “list()” nicht möglich. Das gleichzeitige Zuweisen mehrerer Referenzwerte zu mehreren Variablen wird jedoch nun unterstützt.
Eine Auflistung aller neuen und geänderten Funktionen findet Ihr auf der PHP-Webseite: https://wiki.php.net/rfc#php_73
Veraltete Funktionen in PHP 7.3
In der neuen Versionen wurden wieder einige Altlasten bereinigt und werden als veraltet markiert. Dies bedeutet, dass Sie im Log eine ‘deprecated’ Meldung ausgeben. Diese Funktionalitäten werden zudem spätestens mit Version 8.0 aus dem PHP-Code verschwinden:
– Wird die Option “case-insesitive” für eine Konstante gesetzt, so liefert sowohl die Definition als auch der Aufruf dieser Konstante eine Deprecation-Warnung. Nach gängiger Konvention werden Konstanten sowieso immer in Grossbuchstaben geschrieben.
– Mit der Funktion image2wbmp() der Grafikerweiterung GD können Bilder im Wireless-Bitmap-Format (WBMP) erzeugt werden. Da sich auch die Funktion imagewbmp() praktisch identisch verhält, wird image2wbmp() in Zukunft aus dem PHP-Core verschwinden. Wir empfehlen, bei Verwendung dieser Funktion, an den jeweiligen Stellen des Codes die Funktion durch imagewbmp() auszutauschen.
Eine Auflistung weiterer veralteter Funktionen findet Ihr auf der PHP-Webseite: https://wiki.php.net/rfc/deprecations_php_7_3
Unterstützung für PHP 5.6 und 7.0 beendet
Die Neuerscheinung von PHP 7.3 markiert zugleich das Ende zweier älterer PHP-Branches: Zum 3.Dezember 2018 endete der Support für PHP 7, das mit dem letzten Update 7.0.33 auch keine Fehlerbehebungen mehr erhält.
Mit dem 31.Dezember 2018 endet dann auch nach vielen Jahren der erweiterte Support für PHP 5.6
Beide Versionen erhalten somit auch keine Updates mehr bei auftretenden Sicherheitslücken, weshalb sie in den kommenden Monaten als zunehmend unsicherer einzustufen und als eine Risikoquelle für Attacken anzusehen sein werden. Kunden, die noch eine dieser Versionen einsetzen, wird dringend geraten ein Update vorzunehmen.