动态属性的创建已被弃用,除非类通过使用 #[\AllowDynamicProperties]
属性选择加入。 stdClass 允许动态属性。使用 __get()/__set() 魔术方法不受此更改的影响。动态属性弃用警告可以通过以下方法解决
#[\AllowDynamicProperties]
属性(这也适用于所有子类)。不被 $callable()
语法(但被 call_user_func() 接受)接受的可调用对象已被弃用。特别是
"self::method"
"parent::method"
"static::method"
["self", "method"]
["parent", "method"]
["static", "method"]
["Foo", "Bar::method"]
[new Foo, "Bar::method"]
"A::method"
或 ["A", "method"]
。
"${var}"
和 "${expr}"
样式插值"${var}"
和 "${expr}"
样式的字符串插值已被弃用。分别使用 "$var"/"{$var}"
和 "{${expr}}"
。
对所有 MBString 函数弃用使用 QPrint
、Base64
、Uuencode
和 HTML-ENTITIES
'文本编码'。与 MBString 支持的所有其他文本编码不同,这些编码不编码 Unicode 代码点序列,而是编码原始字节序列。对于指定其中一种非编码时,大多数 MBString 函数的正确返回值尚不清楚。此外,PHP 对所有这些编码都有单独的内置实现;例如,UUencoded 数据可以使用 convert_uuencode()/convert_uudecode() 处理。
内部 SplFileInfo::_bad_state_ex() 方法已被弃用。
utf8_encode() 和 utf8_decode() 已被弃用。