0

zendフレームワークでフォームのリクエスト値を取得しようとしています

以前はpostメソッドを使用していました

しかし、iphoneアプリはgetメソッドでデータを送信しています。

どのように使用できますか?次のような投稿値を使用していました

$ post = array('id' => '2'、'email' => '4'、)

フォームが送信されたときに、このフォーム値でも値を取得したい。

私はこれを使って投稿値を取得していました

      $post = $this->getRequest ()->getPost ();

メソッド値を取得するためにこれを試しました

    $post = $this->getRequest();

しかし

このエラー が発生しますタイプZend_Controller_Request_Httpのオブジェクトを配列として使用できません

これは完全なエラーメッセージです

"Zend_Controller_Request_Http Object([_paramSources:protected] => Array([0] => _GET [1] => _POST)[_requestUri:protected] => / Platinum-picks / p-picks / index / register [_baseUrl:protected] => / Platinum-picks / p-picks [_basePath:protected] => [_pathInfo:protected] => / index / registerration [_params:protected] =>配列([コントローラー]=>インデックス[アクション]=>登録[ module] => default)[_rawBody:protected] => [_aliases:protected] => Array()[_dispatched:protected] => 1 [_module:protected] => default [_moduleKey:protected] => module [_controller:保護]=>インデックス[_controllerKey:protected] =>コントローラー[_action:protected] =>登録[_actionKey:protected] =>アクション)致命的なエラー:タイプZend_Controller_Request_HttpのオブジェクトをDの配列として使用できません:\ Program Files \ Zend \ Apache2 \ htdocs \ Platinum-picks \ application \ models \ User.php on line 267 "

4

2 に答える 2

1

私が正しく理解している場合は、GETメソッドを使用して渡された値を取得する必要があり、POST値を使用して同じことを正常に実行しました。このようなシナリオで行う必要がある唯一の変更は次のとおりです。

$post = $this->getRequest()->getPost ();

になります

$get = $this->getRequest()->getParams();

これにより、他のソースからのパラメーターも返されます。

ユーザーランドパラメーターの優先順位(setParam()を参照)、$ _ GET、$ _ POSTを使用して、パラメーターのマージされた配列を取得します(つまり、ユーザーランドパラメーターの値が他のすべての値よりも優先されます)。

したがって、これが問題になる可能性がある場合は、マニュアルを参照してください。

于 2012-06-26T09:49:17.730 に答える
1

GETたとえば、次を使用して変数を見つけることができます。

$this->getRequest()->getParams();

または、特定の変数の場合:

$this->getRequest()->getParam('myVar');

これにより、値も検索されPOSTます。GET変数のみを検索するには、次を使用します。

$this->getRequest()->getQuery('myVar');
于 2012-06-26T09:47:25.157 に答える