Створення динамічних властивостей застаріло, якщо в класі не використано
    атрибут #[\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() застаріли.