Как использовать сопоставители для условного подключения профилироващика¶
Caution
Возможность использовать сопоставитель для условного подключения профилировщика была удалена в Symfony 4.0.
Профилировщик Symfony не может быть включен или отключен условно используя
сопоставители,так как эта функция была удалена в Symfony 4.0. Однако, вы
можете использовать методы enable()
и disable()
класса
Profiler
в ваших контроллерах,
чтобы управлять профилировщиком программно:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | use Symfony\Component\HttpKernel\Profiler\Profiler;
// ...
class DefaultController
{
// ...
public function someMethod(Profiler $profiler)
{
// для этого конкретного действия контроллера, профилировщик отключен
$profiler->disable();
// ...
}
}
|
Для того, чтобы профилировщик был внедрён в ваш контроллер, вам нужно
создать дополительное имя, указывающее на существующий сервис profiler
:
- YAML
1 2 3
# config/services.yaml services: Symfony\Component\HttpKernel\Profiler\Profiler: '@profiler'
- XML
1 2 3 4 5 6 7 8 9 10 11
<!-- config/services.xml --> <?xml version="1.0" encoding="UTF-8" ?> <container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"> <services> <service id="Symfony\Component\HttpKernel\Profiler\Profiler" alias="profiler" /> </services> </container>
- PHP
1 2 3 4
// config/services.php use Symfony\Component\HttpKernel\Profiler\Profiler; $container->setAlias(Profiler::class, 'profiler');
Эта документация является переводом официальной документации Symfony и предоставляется по свободной лицензии CC BY-SA 3.0.