• Support
my.cyonWebmailBestellen
Dies ist eine Beta-Version der neuen cyon-Website
Einige Funktionen funktionieren möglicherweise nicht wie erwartet.

PHP 8.1 – Bessere Performance & neue Funktionen

Philipp Zeder

Philipp Zeder in Entwicklung & Performance

Veröffentlicht am 28. Jan. 2022

4Kommentare

Inhaltsverzeichnis

  • Noch mehr Performance
  • Neue Funktionen
  • PHP gedeiht weiter schön
  • PHP 8.1 jetzt bei cyon verfügbar

PHP 8.1 ist Ende 2021 erschienen. Du kannst die neueste PHP-Version ab sofort auf deinem Webhosting, Webhosting Pro, Managed Server oder Agencyserver nutzen. Heute zeigen wir dir, über welche Neuerungen du dich beim neuesten PHP-Ableger freuen darfst:

Noch mehr Performance

Auf das Thema Performance legen wir hier bei cyon immer ein starkes Augenmerk. Klar, deine Website soll schliesslich so schnell wie möglich im Browser deines Publikums landen. Nicht zuletzt bei Online-Shops führen längere Ladezeiten zu höheren Absprungraten. Und damit zu Umsatzeinbussen.

💡 Apropos Online-Shops
Kennst du unser Webhosting Pro bereits? Dank noch mehr Rechenleistung, Plugins für LiteSpeed Cache und Priority-Support eignet es sich besonders gut für den Betrieb deines Webshops.

Darum freuen wir uns (und ich hoffe, du dich auch) über den neuen Vererbungscache, der bei PHP 8.1 Einzug in den Code gefunden hat. Der dafür verantwortliche Core-Entwickler, Dmitry Stogov, berichtet von Geschwindigkeitsgewinnen zwischen 5 – 8 %. Auch Brent Roose von stitcher.io hat bei Tests zum Vererbungscache Performancegewinne in vergleichbarem Rahmen erreicht.

Neben dem neuen Cache sorgen noch einige weitere Neuerungen für mehr Speed in PHP 8.1. Laut den PHP-Entwickler*innen sind damit bei WordPress-Websites Geschwindigkeitsgewinne von 3.5 % im Vergleich zu PHP 8.0 zu erwarten. Bei Applikationen, die auf dem Symfony-Framework basieren, liegen die Verbesserungen sogar bei 23 %.

Neue Funktionen

PHP 8.1 ist vollgepackt mit neuen Features und eine komplette Aufzählung sprengt hier den Rahmen. Das sind die 3 neuen Funktionen, die uns am meisten Freude machen:

Enums

Mit Enums (kurz für Enumerations) hält ein Konzept in PHP Einzug, das es bei anderen Sprachen schon lange gibt. Enums repräsentieren eine Sammlung von Konstanten, die zudem typisiert werden können.

Was du vor PHP 8.1 mit

<code>class Status
{
    const DRAFT = 'draft';
    const PUBLISHED = 'published';
    const ARCHIVED = 'archived';
}
function acceptStatus(string $status) {...}
</code>

über Konstanten erreicht hast, schreibst du dank Enums neu so:

<code>enum Status
{
    case Draft;
    case Published;
    case Archived;
}
function acceptStatus(Status $status) {...}
</code>

Die integrierte Typisierung erlaubt es dir, robusteren Code zu schreiben und die Entwicklung von PHP hin zu einer typensichereren Sprache wird fortgeführt.

Fibers

Mit Fibers erhält PHP einen Mechanismus, der das gleichzeitige Ausführen, Pausieren und Abbrechen von Vorgängen ermöglicht. Du wirst das in anderen Sprachen als «Green Threads» oder «User Threads» bekannte Konzept vermutlich nicht selbst direkt einsetzen, aber Frameworks wie Amphp und ReactPHP werden davon profitieren können.

<code>$fiber = new Fiber(function (): void {
   $value = Fiber::suspend('fiber');
   echo "Value used to resume fiber: ", $value, PHP_EOL;
});

$value = $fiber->start();

echo "Value from fiber suspending: ", $value, PHP_EOL;

$fiber->resume('test');
</code>

Readonly-Properties

Ab PHP 8.1 können Properties als readonly deklariert werden. Der Name verrät’s: Mit readonly verhinderst du, dass das Property nach der Initialisierung verändert werden kann. Damit wird dein Code, wie schon bei Enums, weiter robuster, weil unvorhergesehene Datenveränderungen schlichtweg nicht mehr möglich sind.

<code>class Test {
   public readonly string $prop;

   public function __construct(string $prop) {
       // Legal initialization.
       $this->prop = $prop;
   }
}

$test = new Test("foobar");
// Legal read.
var_dump($test->prop); // string(6) "foobar"

// Illegal reassignment. It does not matter that the assigned value is the same.
$test->prop = "foobar";
// Error: Cannot modify readonly property Test::$prop
</code>

PHP gedeiht weiter schön

Das erste Minor-Update des 8er-Strangs sorgt für Freude und zeigt, dass bei PHP noch lange nicht das Ende der Fahnenstange erreicht ist. Ganz im Gegenteil. Die vielen Neuerungen in PHP 8.1 kommen vor allem der statischen Analyse und damit vielen Frameworks und Libraries zu Gute. Das stärkt die Professionalisierung von PHP weiter und lässt uns positiv in die PHP-Zukunft blicken.

PHP 8.1 jetzt bei cyon verfügbar

Bei der neuesten PHP-Version hat es dieses Mal etwas länger gedauert, aber: Du kannst PHP 8.1 jetzt nutzen. Wähle dazu im PHP-Versionsmanager in deinem my.cyon-Konto unter «Erweitert > PHP-Versionsmanager» das Verzeichnis, für das du die Version aktivieren möchtest. Eine Schritt-für-Schritt-Anleitung findest du in unserem Supportcenter: PHP-Version eines Verzeichnisses ändern

Wie jede neue PHP-Version bringt auch PHP 8.1 Änderungen mit sich, die nicht mehr mit älterem PHP-Code kompatibel sind. Du solltest vor einem Wechsel auf die neue Version prüfen, ob deine Applikation davon betroffen ist. Eine Übersicht über sämtliche Änderungen und Neuerungen liefert dir die offizielle Release-Seite auf php.net. Und wenn du noch etwas tiefer in die einzelnen Neuerungen eintauchen möchtest, sind die Artikel von Brent Roose wärmstens zu empfehlen.

Titelbild: Jordan Heinrichs/Unsplash

Bereit für den Wechsel?

Wechsle jetzt zu cyon für ein souveräneres und nachhaltigeres Internet.

Jetzt gratis umziehen

Beteilige dich an der Diskussion

4 Kommentare

Thomas
Thomas
2. Feb. 2022

Hallo Philipp, gibt es schon Pläne MySQL 8 oder MariaDB 10 anzubieten? Die aktuelle MySQL Version 5.7 ist etwas veraltet.

Philipp Zeder
Philipp Zeder
CYON
4. Feb. 2022

Hey Thomas. Ja wir werden MySQL 8 anbieten, das entsprechende Projekt läuft bereits. Zum genauen Zeitpunkt, wann MySQL 8 verfügbar sein wird, kann ich Dir aktuell noch keine Angabe machen.

Danilo
Danilo
30. Jan. 2022

Nice, gibt’s inzwischen vielleicht auch eine Roadmap für ein Update von MySQL?

Philipp Zeder
Philipp Zeder
CYON
4. Feb. 2022

Hey Danilo, merci fürs Nachfragen. Siehe meine Antwort an Thomas.

Wir machen das Internet zu einem besseren Ort

4.8 / 5
Swiss Label
Swiss Hosting

Hosting

  • Webhosting
  • Webhosting Pro
  • Sitebuilder
  • https:// für alle
  • Umzugsservice

Server

  • Managed Server
  • Agency Server

Domains

  • Domains
  • Domain transferieren
  • Alle Domains

Support

  • Support Center
  • E-Mail Zauberer
  • my.cyon
  • Webmail

Über uns

  • Warum cyon
  • Team
  • Jobs
  • Geschichte
  • Partner*innen
  • Engagement
  • Nachhaltigkeit
  • Infrastruktur
  • Blog

Rechtliches

  • AGB
  • Datenschutzerklärung
  • Impressum
Swiss Label
Swiss Hosting
Folge uns
Newsletter

Schliesse dich 4.000 anderen an (+20 in der letzten Woche neu beigetreten)