(PHP 8 >= 8.4.0)
Атрибут помечает функциональность устаревшей.
Устаревшая функциональность вызывает ошибки уровня E_USER_DEPRECATED
.
Необязательное сообщение, которое объясняет причину устаревания и возможную замену функциональности. Текст сообщения включается в предупреждение об устаревании.
Необязательная строка, которая указывает, с какого момента устарела функциональность. PHP не проверяет содержание строки и поэтому иногда строка включает сведения о версии, дате или другие значения, которые считает уместными. Строка включается в предупреждение об устаревании.
Функциональность самого́ PHP указывает в значении свойства since
момент устаревания в виде мажорной и минорной версий, например '8.4'
.
<?php
#[\Deprecated(message: "use safe_replacement() instead", since: "1.5")]
function unsafe_function()
{
echo "This is unsafe", PHP_EOL;
}
unsafe_function();
?>
Результат выполнения приведённого примера в PHP 8.4 аналогичен:
Deprecated: Function unsafe_function() is deprecated since 1.5, use safe_replacement() instead in example.php on line 9 This is unsafe