Функция trigger_deprecation
Функция trigger_deprecation из компонента symfony/deprecation-contracts
выводит уведомление о том, что какая-то часть кода устарела.
Первым параметром передаётся имя пакета, вторым - версия,
в которой код был помечен устаревшим, третьим - сообщение с описанием.
Четвёртым и последующими параметрами можно передать значения,
которые будут подставлены в сообщение через sprintf.
Функция ничего не возвращает.
Синтаксис
trigger_deprecation(
string $package,
string $version,
string $message,
mixed ...$args
): void
Пример
Давайте вызовем функцию и передадим имя пакета, версию и сообщение:
<?php
namespace AppService;
use function trigger_deprecation;
class ArticleService
{
public function getTitle(): string
{
trigger_deprecation(
'app/article',
'2.1',
'Метод %s устарел, используйте %s.',
__METHOD__,
'getHeading'
);
return 'article';
}
}
?>
Пример
Давайте вызовем метод и посмотрим результат в консоли:
<?php
namespace AppController;
use AppServiceArticleService;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
class ArticleController extends AbstractController
{
public function index(ArticleService $service): Response
{
return new Response($service->getTitle());
}
}
?>
Результат выполнения кода:
"article"
Пример
Давайте передадим несколько аргументов и подставим их в сообщение:
<?php
use function trigger_deprecation;
$name = 'getTitle';
$replacement = 'getHeading';
trigger_deprecation(
'app/article',
'2.1',
'Метод %s устарел, используйте %s.',
$name,
$replacement
);
echo 'ok';
?>
Результат выполнения кода:
"ok"
Смотрите также
-
функция
dd,
которая выводит переменную и завершает выполнение -
функция
dump,
которая выводит содержимое переменной -
класс
OptionsResolver,
который умеет помечать опции устаревшими -
класс
Stopwatch,
который измеряет время выполнения участков кода