Principe

YAML

# Fichier config/route.yaml
default:
    path:     /default
    defaults: { _controller: App\Controller\DefaultController::index }
default
Nom unique de la route
path
Entrée : URL à capturer
defaults
Sortie : Ici, le contrôleur et la méthode associée à appeler

PHP

// fichier src/Controller/DefaultController.php
/**
 * @Route("/default", name="default")
 */
public function index()
{
    ...

Nous sommes ici dans le contrôleur et nous annotons la méthode appelée par la route.

"/default"
Entrée : URL à capturer (équivalent du path ci dessus
name
Nom unique de la route

Fonctionnement

Le routeur va donc confronter l'URL reçue à la liste des routes connues, dans l'ordre du ficher de routage et s'arrêter à la première route qui correspond. On peut voir ce comportement dans l'onglet Routing du Profiler.

Il est important d'utiliser des noms uniques pour les routes. Ce seront ces éléments qui seront utilisés dans l'ensemble de l'application. Ainsi, il sera possible de changer les URLs (path) sans casser la navigation, les adresses étant calculées par l'application.