Das Erstellen dynamischer Eigenschaften ist veraltet, es sei denn, die
Klasse erlaubt dies mit dem Attribut
#[\AllowDynamicProperties]. stdClass
erlaubt dynamische Eigenschaften. Die Verwendung der magischen Methoden
__get()/__set()
ist von dieser Änderung nicht betroffen. Die Warnung, dass dynamische
Eigenschaften veraltet sind, kann wie folgt beseitigt werden:
#[\AllowDynamicProperties] zur
Klasse (welches auch für alle untergeordneten Klassen gilt).
Callables, die nicht von der Syntax $callable() akzeptiert
werden (aber von call_user_func()), sind veraltet.
Im Besonderen:
"self::method""parent::method""static::method"["self", "method"]["parent", "method"]["static", "method"]["Foo", "Bar::method"][new Foo, "Bar::method"]"A::method" oder ["A", "method"].
"${var}" und "${expr}"
Die Zeichenketten-Interpolation im Stil von "${var}" und
"${expr}" ist veraltet. Stattdessen sollten
"$var"/"{$var}" und "{${expr}}" verwendet werden.
Die Verwendung der "Textkodierungen" QPrint,
Base64, Uuencode und
HTML-ENTITIES ist bei allen MBString-Funktionen
veraltet. Im Gegensatz zu allen anderen Textkodierungen, die von MBString
unterstützt werden, kodieren diese keine Sequenz von Unicode-Codepoints,
sondern eine Sequenz von rohen Bytes. Es ist daher nicht klar, was die
korrekten Rückgabewerte für die meisten MBString-Funktionen sein sollten,
wenn eine dieser Nicht-Kodierungen angegeben wird. Außerdem hat PHP
separate, eingebaute Implementierungen für alle diese Funktionen; zum
Beispiel können UU-kodierte Daten mit
convert_uuencode()/convert_uudecode()
verarbeitet werden.
Die interne Methode SplFileInfo::_bad_state_ex() ist veraltet.
Die Funktionen utf8_encode() und utf8_decode() sind veraltet.