Enabling the Symfony profiler conditionally
Published on 2020-04-12 • Modified on 2020-04-12
In this snippet, we will see how to enable or disable the Symfony profiler conditionally. I was reading the documentation (check out the "read the doc" link) then I realised it wasn't working. I tried to add that alias as the doc says, it works with the development environment but not with the production one. So, instead of adding this alias, I added a conditional named service in my services.yaml
file:
$profiler: '@?profiler'
It is located in the services > _defaults > bind
section. Now, it works in both environments. I have created an issue on the Symfony tracker so the documentation can be fixed (check the "more on the web" link). I find this solution very elegant 😊.
#[Route(path: '/phpinfo', name: 'phpinfo')]
public function phpInfoAction(Request $request, ?Profiler $profiler): Response
{
$profiler?->disable(); // PHP 8
/* Before PHP 8
if ($profiler !== null) {
$profiler->disable(); // or ->enable()
}
*/
More on Stackoverflow Read the doc More on the web Random snippet
Call to action
Did you like this post? You can help me back in several ways: (use the "reply" link on the right to comment or to contact me )
- Report any error/typo.
- Report something that could be improved.
- Like and repost!
- Follow me on Bluesky 🦋
- Subscribe to the RSS feed.
- Click on the More on Stackoverflow buttons to make me win "Announcer" badges 🏅.
Thank you for reading! And see you soon on Strangebuzz! 😉
