Now Reading
Programmiersprache: PHP 8.1 führt Enumerationen ein

Programmiersprache: PHP 8.1 führt Enumerationen ein

Programmiersprache: PHP 8.1 führt Enumerationen ein

[ad_1]

Pro die Programmiersprache PHP liegt Version 8.1 vor. Dies Update bringt zahlreiche Neuerungen, wie Enumerationen, Fibers und Performance-Verbesserungen.

Dies Release führt Enumerationen (von kurzer Dauer: Enum) ein. Hier handelt es sich korrespondierend zu anderen Sprachen wie Java oder Kohlenstoff++ um verschmelzen Aufzählungstyp, jener vorgegebene Werte erlaubt. Enums weisen in PHP Ähnlichkeiten zu Klassen aufwärts und teilen sich die gleichen Namensräume wie Klassen, Interfaces und Traits. Dies wiederum macht sie aufwärts die gleiche Weise selbstständig ladbar (autoloadable). Zur Veranschaulichung dient ein Vorzeigebeispiel aus dem Request for Comments (RFC) aufwärts wiki.php.net:

enum Suit {
	case Hearts;
	case Diamonds;
	case Clubs;
	case Spades;
}

Dies Vorzeigebeispiel erzeugt verschmelzen neuen Aufzählungstyp namens Suit, jener die folgenden vier Werte aufnimmt: Suit::Hearts, Suit::Diamonds, Suit::Clubs und Suit::Spades. Diesen Werten lassen sich Variablen zuweisen. Entwickler können Aufzählungstypen mit dem Schlüsselwort Enum zum Versteuern anmelden, dem jener Name des Types folgt. Ein Enum kann sowohl string denn Neben… int denn Grundlage nehmen. Darüber hinaus können sie Neben… eine Lebensart erweitern und/oder Schnittstellen implementieren.

Dieser Vorteil von Enums ist, dass sie eine Sammlung von konstanten Werten darstellen, hinwieder vor allem können ebendiese Werte typisiert werden. Im Kontrast zur internen Verwendung spezieller Zeichenketten oder Zahlen (z.B. Magic Numbers) zum Speichern und Funktionieren mit Parametern, sollen Enums den Anwendungscode lesbarer zeugen und unerwartete Anwendungszustände vermeiden. Mit einer Mehrheit von 44 zu 7 Stimmen wurde in den PHP Internals z. Hd. dies RFC gestimmt, sodass Enums nun Teil von PHP 8.1 sind.

Bisher war PHP lediglich z. Hd. dies Schreiben von synchronem Geheimzeichen vorgesehen. Hier wird dies Darstellen von Funktionen angehalten, solange bis ein Ergebnis verfügbar ist, dies von einer Unterprogramm zurückgegeben wird. Seit dem Zeitpunkt einiger Zeit gab es laut dem RFC Versuche, Neben… asynchronen Geheimzeichen zu schreiben, um gleichzeitige Eintrag-Herausgabe-Operationen zu zuteil werden lassen. Asynchrone Funktionen erlauben verschmelzen Callback oder verschenken verschmelzen Platzhalter z. Hd. verschmelzen zukünftigen Zahl zurück, um den Geheimzeichen an jener Stelle erst dann fortzusetzen, wenn ein Ergebnis vorliegt. Somit wird jener Geheimzeichen weiterhin umgesetzt, ohne aufwärts ein Ergebnis zu warten – Beispiele z. Hd. ebendiese Projekte sind amphp, ReactPHP und Guzzle.

Dies Importieren von Fibers soll die Unterscheidung von asynchronen und synchronen Funktionen aufheben. Sie zuteil werden lassen offenbar die Erstellung von unterbrechbaren Full-Stack-Funktionen, die zur Implementierung von kooperativem Multitasking in PHP verwendet werden können – Neben… prominent denn Koroutinen oder sogenannte Green-Threads. Fibers schaffen den gesamten Stapel an Ausführungen zum Stillstehen, sodass jener Caller jener Unterprogramm die Wesen und Weise des Aufrufens jener Unterprogramm nicht ändern muss.

Dies Darstellen lässt sich an einer beliebigen Stelle eines Stapels mit Fiber::suspend() unterbrechen. Dies RFC wurde mit 50 zu 14 Stimmen beschlossen.

PHP 8.1 bringt neben Enums und Fibers Neuerungen z. Hd. eine bessere Performance. Release Manager PHP-Core-Entwickler Dmitry Stogov hat wenige Verbesserungen zur Erweiterung opcache hinzugefügt, die er “inheritance cache” nennt. Mit dieser Unterprogramm lassen sich Verknüpfungen zwischen Klassen zwischenspeichern, verwandt wie in PHP 7.4, wo verknüpfte Klassen vorgeladen werden können. Er berichtet aufwärts GitHub von einer Steigerung jener Performance zwischen 5 und 8 v. H..

Die verkettete Liste jener Neuerungen von PHP 8.1 ist weit. Eine Enumeration aller Änderungen findet sich im Gebühr aufwärts php.net. Von kurzer Dauer vor dem Release hatte sich die PHP Foundation gegründet, um die Weiterentwicklung jener Sprache nachher dem Retirade von Nikita Popov zu sichern.


(mdo)

[ad_2]
View Comments (0)

Leave a Reply

Your email address will not be published.

Scroll To Top