PHP7 ist da
Speed von PHP7
Ein Update auf PHP7 lohnt sich schon nur Aufgrund des Performancegewinns, der dadurch entsteht. Die Performance konnte im Vergleich zur alten PHP Version um beinahe das Doppelte verbessert werden. Komplexere Webapplikationen profitieren sogar von einer grösseren Verbesserung. WordPress ist beispielsweise fast 2,3 Mal so schnell wie unter PHP Version 5.6. In Zukunft werden wir also eine deutliche Performanceverbesserung bei Webapplikationen erleben.Deklaration der Datentypen
In PHP7 können, wie von anderen Programmiersprachen bekannt, Datentypen explizit definiert werden. So können Fehler wie sie mit den undefinierten Datentypen passieren nicht mehr so einfach passieren. Weiter können die Parameter einer Funktion auf einen Typ definiert werden. Auch der Rückgabetyp einer Funktion kann definiert werden. Dies erhöht die Leserlichkeit des Quelltextes und forciert einen «besseren» Code. Standardmässig verursacht der Interpreter keine Fehlermeldung, falls falsche Datentypen gebraucht werden. Das kann aber in jedem File durch die Funktion declare(strict_types=1) geändert werden.function increment(int $a): int { return $a + 1.0; // keine strikte Überprüfung des Returns }
declare(strict_types=1); function increment(int $a): int { return $a + 1.0; // strikte Überprüfung des Returns }
dirname() erhält einen neuen Parameter
Mit dirname() kann der übergeordnete Ordner einer Datei abgerufen werden. Mit PHP7 ist es nun möglich einen zweiten Parameter zu übergeben, der definiert, wie viele Stufen in der Ordnerstruktur hochgegangen werden soll.$dirname = dirname( __FILE, 4 ); // Geht 4 Stufen nach oben
Neuer Operator
Der Operator ?? überprüft, ob eine Variable gesetzt und nicht NULL ist. Die mühsame Überprüfung durch eine if() Bedingung ist daher nicht mehr nötig.// PHP 7 $username = $_GET['user'] ?? 'nobody'; // PHP 5.x $username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
Spaceship Operator
Um zwei Werte miteinander zu vergleichen, kann in PHP7 der sogenannte Spaceship Operator gebraucht werden. Früher musste dafür immer eine If-Bedingung verwendet werden. Diese Grössenüberprüfung kann auf sämtliche Datentypen angewendet werden. Beim Datentyp String wird die Position des Charakters im Alphabet verglichen.// Integers echo 1 <=> 1; // 0 echo 1 <=> 2; // -1 echo 2 <=> 1; // 1 // Floats echo 1.5 <=> 1.5; // 0 echo 1.5 <=> 2.5; // -1 echo 2.5 <=> 1.5; // 1 // Strings echo "a" <=> "a"; // 0 echo "a" <=> "b"; // -1 echo "b" <=> "a"; // 1
Preg Replace Callback Array
In PHP7 wurde die neue Funktion preg_replace_callback_array zu den RegEx Funktionen hinzugefügt. So kann ein String auf eine Reihe von Regulären Ausdrücken überprüft werden und nicht wie vorher immer nur auf einen Ausdruck.$subject = 'Aaaaaa Bbb'; preg_replace_callback_array( [ '~[a]+~i' => function ($match) { echo strlen($match[0]), ' matches for "a" found', PHP_EOL; }, '~[b]+~i' => function ($match) { echo strlen($match[0]), ' matches for "b" found', PHP_EOL; } ], $subject ); // Gibt "6 matches for "a" found" aus // Gibt "3 matches for "b" found" aus
Security
Die bis anhin existierende Sicherheitslücken mit der Funktion unserialize wurden behoben. Bei dieser sogenannten PHP Object Injection konnte sich ein Angreifer kompletten Zugriff auf das System verschaffen. Diese Schwachstelle wurde in PHP7 minimert.Fazit
Der Einsatz von PHP7 lohnt sich durchwegs. Zudem läuft die neuste Version sehr stabil und kann produktiv eingesetzt werden. Unsere Hosting werden in der Zukunft migriert. Weitere Informationen zu PHP und PHP7 unter folgenden, weiterführenden Links:Mehr Artikel wie dieser
Welche WordPress Version habe ich? So findest Du es heraus!
WordPress ist das beliebteste CMS der Welt, mit welchem sich neben Blogs auch ganze Webseiten erstellen lassen. Da WordPress regelmässig und fleissig verbessert wird, kann…
Weiterlesen WordPress 6.1 – Alle Neuerungen mit webP und dem neuen Twenty Twenty-Three Standard-Theme im Überblick
Das dritte grosse WordPress Update in diesem Jahr steht vor der Türe. Mit WordPress 6.1 kommen am 1. November 2022 wieder zahlreiche Neuerungen auf uns…
Weiterlesen Wie wir ACF Blocks mit Handlebars Templating einsetzen
Mittels Handlebars Templating trennen wir Logik sauber vom Inhalt. Auf diese Weise können wir übersichtliche, einfache und performante Templates für WordPress Editor Blocks erstellen, welche…
Weiterlesen iPhone Bildschirmgrössen – (k)ein Hexenwerk für Webdesigner?
iPhone-Bildschirm Messgrössen iPhone Bildschirmgrösse in Zoll (Display Size, Inches) Dies ist die Bildschirmgrösse in Zoll, gemessen von einer Ecke zur anderen. Genau so, wie auch Bildschirmgrössen von…
Weiterlesen Vorstellung von WordPress 6.0 – Neue Blöcke und mehr Performance
Seit dem 24. Mai 2022 ist mit WordPress 6.0 die zweite Hauptversion in diesem Jahr veröffentlicht worden. Benannt wurde die Version nach Jazzmusiker Arturo O’Farrill.…
Weiterlesen So kombinieren wir Nested Pages, SEO Framework & Polylang in WordPress
Bei vielen Kundenwebseiten setzen wir auf das Plugin Nested Pages, um Seitenstruktur besser sehen (und verwalten) zu können. Ohne dieses Plugin sieht die Anzeige von…
Weiterlesen WordPress Login – so bekommst Du Zugang zu Deinem Dashboard
Gerade für WordPress Anfänger, aber auch bei fortgeschrittenen Benutzern, kann es oft schwierig sein, sich bei seinem Konto anzumelden. Im folgenden Beitrag werde ich Dir…
Weiterlesen WordPress 6.0: Entwicklerteam gibt Zeitplan der neuen Version bekannt
Update: WordPress 6.0 wurde am 24. Mai 2022 veröffentlicht Wie Matias Ventura Ende Januar schrieb, soll WordPress 6.0 ein Abschluss der Phase 2 des Gutenberg-Projekts…
Weiterlesen WordPress 5.9 – Was ist neu und kommt mit dem Update
Ursprünglich sollte WordPress 5.9 (Josephine) bereits am 14. Dezember 2021 veröffentlicht werden, wurde jedoch wegen offenen Problemen nach mehrfachen Verschieben nun am 25. Januar 2022…
Weiterlesen WordPress Bilder und Medien: Alles was du wissen musst
Bilder sind ein grosser und wichtiger Bestandteil einer modernen Webseite. Sie helfen dem Besucher und Leser, Dinge zu visualisieren und lockern auch gerne lange Beiträge…
Weiterlesen Warum unsere Kunden ihre Webseite kaputt layouten können
Einleitung / Basics Bereits seit einiger Zeit haben wir unseren neuen cubetech Core im Einsatz. Intern nennen wir das Ding liebevoll „gutenbase“ – eine Mischung…
Weiterlesen Tech Talk – „Advanced Custom Fields“ Plugin
Bereits seit langer Zeit setzen wir bei unseren WordPress-Installationen auf das populäre Plugin «Advanced Custom Fields» (nachfolgend ACF). Dieser Beitrag zeigt, wie wir unsere Webseiten…
Weiterlesen