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