2012-06-27 21 views
55

内のすべてのリクエストパラメータを取得、私は実行する必要がポストから値を取得するたび:symfonyの2のコントローラではsymfonyの2

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

が戻ってくる1つの文にこれらを統合する方法はあり配列? ZendのgetParams()のようなもの?

答えて

121

すべてのGETパラメータを取得するには$this->getRequest()->query->all();、すべてのPOSTパラメータを取得するには$this->getRequest()->request->all();を使用できます。 Requestクラスについての詳細情報については

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

、ベストプラクティスの要求は、その中のアクションと引数として渡されると最近のSymfony 2.6+バージョンでhttp://api.symfony.com/2.8/Symfony/Component/HttpFoundation/Request.html

+7

パス内のパラメータの値を取得するには(例:/ posts/{})、$ this-> getRequest()を明示的に呼び出す必要はありません。 id}) '$ request-> attributes-> all() 'となります。私は '$ request-> get()'を使ってこのデータを取得する唯一の方法であり、別の方法を探していました。 – Dreen

+1

あなたは多くのタイプを保存しました! :D –

+0

これはmultipart/form-dataでは機能しません。 –

6

を参照してください。だからあなたの場合は

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()); 
     } 

    } 
関連する問題