Activer le profiler Symfony conditionnellement
Publié le 12/04/2020 • Mis à jour le 12/04/2020
Dans ce bout de code, nous allons voir comment activer ou désactiver le profiler Symfony. Je lisais la documentation (voir le lien "lien la doc") et je me suis rendu compte que ça ne fonctionnait pas. J'ai essayé d'ajouter cet alias comme indiqué, cela marche avec l'environnement de développement mais pas avec celui de production. Donc, à la place d'ajouter cet alias, j'ai ajouté un paramètre nommé conditionnel dans mon fichier services.yaml
:
$profiler: '@?profiler'
Ce paramètre est situé dans la section services > _defaults > bind
. Maintenant, ça fonctionne correctement pour les deux environnements. J'ai créé une issue sur le tracker Symfony pour que la documentation puisse être corrigée (voir le lien "plus sur le web"). Je trouve cette solution vraiment élégante 😊.
#[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()
}
*/
Plus sur Stackoverflow Lire la doc Plus sur le web Snippet aléatoire