Obtenir tous les paramètres de requête dans Symfony 2

Dans les contrôleurs symfony 2, chaque fois que je veux obtenir une valeur de post, je dois exécuter:

$this->getRequest()->get('value1');
$this->getRequest()->get('value2');

Existe-t-il un moyen de les consolider en une seule instruction qui retournerait un tableau? Quelque chose comme Getparams () de Zend?

59
demandé sur j0k 2012-06-27 17:24:55

2 réponses

Vous pouvez faire $this->getRequest()->query->all(); pour obtenir tous les paramètres GET et $this->getRequest()->request->all(); pour obtenir tous les paramètres POST.

, Donc dans votre cas:

$params = $this->getRequest()->request->all();
$params['value1'];
$params['value2'];

Pour plus d'informations sur la classe Request, voir http://api.symfony.com/2.8/Symfony/Component/HttpFoundation/Request.html

127
répondu Guillaume Flandre 2017-06-06 11:07:48

Avec les versions récentes de Symfony 2.6 + comme une demande de meilleure pratique est passée en argument avec action dans ce cas, vous n'aurez pas besoin d'appeler explicitement $ this - > getRequest (), mais plutôt d'appeler $request->request->all ()

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
use Symfony\Component\HttpKernel\Exception\NotAcceptableHttpException;
use Symfony\Component\HttpFoundation\RedirectResponse;

    class SampleController extends Controller
    {


        public function indexAction(Request $request) {

           var_dump($request->request->all());
        }

    }
8
répondu Aftab Naveed 2015-10-25 09:16:47