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!