Wissensdatenbank · PHP
PHP Fatal error: Die Syntax für den Array- und Zeichenfolgen-Offset-Zugriff mit geschweiften Klammern wird nicht mehr unterstützt
Zuletzt aktualisiert am 2025-06-07
PHP ist eine beliebte serverseitige Skriptsprache, die in der Webentwicklung weit verbreitet ist. Beim Upgrade auf PHP 8.1.17 kann es jedoch vorkommen, dass Entwickler auf die Fehlermeldung „Array and string offset access syntax with curly braces is no longer supported“ stoßen. In diesem Artikel erläutern wir die Ursachen dieses Fehlers und zeigen Lösungen und Korrekturen auf.
Ursachen des Fehlers
Die Syntax mit geschweiften Klammern für den Zugriff auf Array- und String-Offsets wurde in PHP 7.4 als veraltet markiert und in PHP 8.1.17 vollständig entfernt. Das bedeutet: Wenn Ihr Code diese Syntax verwendet, wird beim Ausführen unter PHP 8.1.17 ein Fehler ausgelöst. Der Grund für diese Änderung ist, dass die Syntax mit geschweiften Klammern weniger lesbar und weniger intuitiv ist als die Syntax mit eckigen Klammern, die in PHP der bevorzugte Weg für den Zugriff auf Array- und String-Offsets ist.
Abhilfe
Um diesen Fehler zu vermeiden, sollten Entwickler die Syntax mit geschweiften Klammern für den Zugriff auf Array- und String-Offsets nicht verwenden. Stattdessen sollten sie die Syntax mit eckigen Klammern nutzen. Sie ist nicht nur in PHP 8.1.17 die bevorzugte Syntax, sondern auch besser lesbar und leichter verständlich.
Hier ein Beispiel für Code, der die Syntax mit geschweiften Klammern verwendet:
$array = ['foo', 'bar'];
echo $array{'0'};
Und hier derselbe Code mit der Syntax mit eckigen Klammern:
$array = ['foo', 'bar'];
echo $array[0];
Korrekturen
Wenn Ihr Code die Syntax mit geschweiften Klammern verwendet, müssen Sie ihn so anpassen, dass stattdessen die Syntax mit eckigen Klammern genutzt wird. Je nach Umfang Ihrer Codebasis kann dies sehr zeitaufwendig sein.
Am einfachsten beheben Sie diesen Fehler mit einem automatisierten Tool wie Rector oder PHP-CS-Fixer. Diese Tools können Ihren Code automatisch auf die korrekte Syntax umstellen und sparen Ihnen so Zeit und Aufwand.
Zusammenfassung
Der Fehler „Array and string offset access syntax with curly braces is no longer supported“ tritt auf, wenn Entwickler in PHP 8.1.17 versuchen, mit geschweiften Klammern auf Array- und String-Offsets zuzugreifen. Diese Syntax wurde in PHP 7.4 als veraltet markiert und in PHP 8.1.17 vollständig entfernt. Um den Fehler zu vermeiden, sollten Entwickler stattdessen die Syntax mit eckigen Klammern verwenden.
Wenn Ihr Code die Syntax mit geschweiften Klammern verwendet, müssen Sie ihn so anpassen, dass die Syntax mit eckigen Klammern genutzt wird. Automatisierte Tools wie Rector und PHP-CS-Fixer helfen Ihnen, diese Änderung schnell und einfach durchzuführen.
Tell us what you need
Compare available plans or describe your workload so we can discuss a suitable starting point.