Maison  >  Article  >  développement back-end  >  Comment puis-je obtenir le nom de la route actuelle dans Symfony 2 ?

Comment puis-je obtenir le nom de la route actuelle dans Symfony 2 ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-28 14:02:02525parcourir

How do I get the current route name in Symfony 2?

Comment récupérer l'itinéraire actuel dans Symfony 2

Obtenir l'itinéraire actuel dans Symfony 2 est une tâche courante dans diverses tâches, telles que créer des liens, déterminer les autorisations des utilisateurs ou afficher des informations contextuelles.

Solution

Pour récupérer l'itinéraire actuel, vous pouvez exploiter l'objet de requête. Cet objet donne accès aux informations sur la requête HTTP entrante, y compris la route qui correspondait.

Implémentation

Commencez par injecter l'objet de requête dans votre contrôleur ou une autre classe en tant que dépendance de service. Cela peut être fait en annotant la classe avec l'annotation @ContainerAware et en ajoutant une propriété $request :

/**
 * @ContainerAware
 */
class MyController
{
    private $request;

    public function __construct(ContainerInterface $container)
    {
        $this->container = $container;
    }
}

Une fois que vous avez accès à l'objet $request, vous pouvez récupérer le nom de la route actuelle à l'aide de get( '_route') :

$routeName = $this->request->get('_route');

La variable $routeName contiendra désormais le nom de la route qui correspondait à la requête en cours. Dans votre exemple, ce serait somePage.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn