Obtener todos los parámetros de solicitud en Symfony 2


En los controladores symfony 2, cada vez que quiero obtener un valor de post necesito ejecutar:

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

¿Hay alguna manera de consolidar estos en una declaración que devolvería una matriz? Algo así como getParams () de Zend?

Author: j0k, 2012-06-27

2 answers

Puedes hacer $this->getRequest()->query->all(); para obtener todos los parámetros GET y $this->getRequest()->request->all(); para obtener todos los parámetros POST.

Así que en su caso:

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

Para obtener más información sobre la clase Request, consulte http://api.symfony.com/2.8/Symfony/Component/HttpFoundation/Request.html

 127
Author: Guillaume Flandre,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-06 11:07:48

Con las versiones recientes de Symfony 2.6 + como una solicitud de mejores prácticas se pasa como un argumento con acción en ese caso no necesitará llamar explícitamente a this this->getRequest(), sino llamar a request 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
Author: Aftab Naveed,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-10-25 09:16:47