array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'migration82.deprecated.php', 1 => 'Устаревшая функциональность', ), 'up' => array ( 0 => 'migration82.php', 1 => 'Миграция с PHP 8.1.x на PHP 8.2.x', ), 'prev' => array ( 0 => 'migration82.incompatible.php', 1 => 'Изменения, ломающие обратную совместимость', ), 'next' => array ( 0 => 'migration82.other-changes.php', 1 => 'Другие изменения', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'appendices/migration82/deprecated.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
Создание динамических свойств объявлено устаревшим, за исключением, если класс
не обрабатывает их использование с помощью атрибута #[\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}}"
соответственно.
Использование кодировок текста QPrint
, Base64
,
Uuencode
и HTML-ENTITIES
объявлено устаревшим для всех функций MBString.
В отличие от остальных текстовых кодировок, поддерживаемых MBString,
эти кодировки не кодируют последовательность кодовых точек Unicode, а только последовательность необработанных байтов.
Неясно, какими должны быть правильные возвращаемые значения для большинства функций MBString,
если указана одна из этих кодировок.
Более того, в PHP есть встроенные реализации всех этих кодировок;
например, UU-закодированные данные можно обрабатывать с помощью функций
convert_uuencode()/convert_uudecode().
Внутренний метод SplFileInfo::_bad_state_ex() объявлен устаревшим.
Функции utf8_encode() и utf8_decode() объявлены устаревшими.