Paramètres
Dans les routes
/** * @Route("/parameters/{id}", name="parameters") */ public function parameters($id)
On peut récupérer la valeur capturée par la route dans le contrôleur, grâce à la variable $id
.
Hors route
Pour utiliser les paramètres passés en URL, du type /route?key=value
, il faut passer par la
requête.
Pour rappel, le contrôleur reçoit le requête et génère la réponse.
<?php ... use Symfony\Component\HttpFoundation\Request; ... class ParametersController extends Controller { /** * @Route("/parameters/{id}", name="parameters") */ public function parameters($id) { // Récupération de la requête $request = Request::createFromGlobals(); // Récupération du paramètre $value = $request->query->get('key'); return new Response("Valeurs saisies : ".$id." ainsi que le parmètre hors route ".$value); } }
Exemple avec la page courante.
Equivalences PHP
Symfony fournit des méthodes pour les différents types de requêtes :
$GET
:$request->query
$POST
:$request->request
$COOKIE
:$request->cookies