PHP 8.3 Versions-Update
Neue Funktionen und Verbesserungen
Das Wichtigste auf einen Blick
Tipp
Die neuesten PHP-VersionenPHP-Versionen Frei wählbar mit dem Modul Entwicklung im Hosting Control Panel sind bei unseren Webhosting Paketen immer in kürzester Zeit verfügbar.
Weitere Artikel zum Thema PHP
PHP 8
Alle Infos zum Major Update.
PHP verwalten
PHP auf Ihrem Webhosting verwalten.
WordPress PHP-Version aktualisieren
Sorgenfreies Update Ihrer WordPress PHP-Version
1. Typisierte Klassenkonstanten
In PHP 8.3 wurde die Typisierung von Klassenkonstanten eingeführt. Entwickler können jetzt den Datentyp von Klassenkonstanten explizit festlegen, was zu klarerem und sichererem Code führt. Dies hilft, unerwartete Fehler zu vermeiden und die Codequalität zu verbessern.
function fun ($x, $y)
// Vor PHP 8.3
interface I {
const PHP = 'PHP 8.2';
}
// In PHP 8.3
interface I {
const string PHP = 'PHP 8.3';
}
2. Dynamische Abfrage von Klassenkonstanten
In vorherigen PHP-Versionen wurde die Abfrage von Klassenkonstanten durch die constant-Funktion realisiert. In PHP 8.3 wurde diese Syntax verbessert, um die Lesbarkeit zu erhöhen.
function fun ($x, $y)
// Vor PHP 8.3
var_dump(constant(Foo::class . "::{$searchableConstant}"));
// In PHP 8.3
var_dump(Foo::{$searchableConstant});
3. Neues #[\Override]-Attribut
Das neue #[\Override]-Attribut ermöglicht es Entwicklern, explizit anzuzeigen, dass eine Methode eine Elternmethode überschreibt. Dadurch wird der Code robuster und erleichtert Refactoring-Prozesse.
function fun ($x, $y)
// Vor PHP 8.3
protected function taerDown(): void {
// ...
}
// In PHP 8.3
#[\Override]
protected function taerDown(): void {
// ...
}
4. Deep-Cloning von schreibgeschützten Eigenschaften
Mit PHP 8.3 können schreibgeschützte Eigenschaften einmalig innerhalb der magischen __clone-Methode modifiziert werden. Dies ermöglicht eine tiefere Klonung von schreibgeschützten Eigenschaften.
function fun ($x, $y)
// Vor PHP 8.3
$instance = new Foo(new PHP());
$cloned = clone $instance;
$cloned->php->version = '8.3'; // Fehler
// In PHP 8.3
$instance = new Foo(new PHP());
$cloned = clone $instance;
$cloned->php->version = '8.3'; // Erlaubt
5. Neue Funktionen
PHP 8.3 führt auch neue Funktionen ein, darunter json_validate() zur effizienten Überprüfung von JSON und Methoden wie Randomizer::getBytesFromString() zur Generierung von zufälligen Zeichenketten.
function fun ($x, $y)
// Neue json_validate() Funktion
var_dump(json_validate('{ "test": { "foo": "bar" } }')); // true
// Neue Randomizer::getBytesFromString() Methode
$randomizer = new \Random\Randomizer();
$randomDomain = sprintf(
"%s.example.com",
$randomizer->getBytesFromString(
'abcdefghijklmnopqrstuvwxyz0123456789',
16
)
);
echo $randomDomain;
6. Weitere Verbesserungen und Änderungen
Zusätzlich zu den oben genannten Änderungen enthält PHP 8.3 auch neue Methoden für DOM-Elemente, Verbesserungen in der Random-Extension, neue Funktionen wie mb_str_pad() und zahlreiche Bugfixes und Optimierungen.
7. Deprecations
Einige ältere Funktionen und Methoden wurden als veraltet markiert, und es gab Anpassungen an der Behandlung von Datum/Zeit-Ausnahmen sowie Änderungen an der range()-Funktion und anderen Teilen der Sprache. Entwickler werden ermutigt, auf PHP 8.3 zu aktualisieren, um von den neuen Funktionen zu profitieren und ihre Anwendungen sicher und auf dem neuesten Stand zu halten. Die vollständige Liste der Änderungen und Anleitungen zur Aktualisierung finden Sie in der offiziellen PHP 8.3-Dokumentation.