symfony2请求对象get()函数

时间:2014-02-27 15:11:35

标签: php symfony

我有一个标准的登录表单,我使用createFormBuilder()方法构建。当我尝试 使用

获取输入
$this->get('request')->request->get('userName'); 

我得到NULL beacuse $ this-> get('request') - > request是一个ParameterBag对象,只有输入值的'form'字段。所以,当我这样做...

$this->get('request')->request->get('form')

我得到了所需的结果但是在一个数组中

array(
    'userName' => 'Dude',
    'password' => 'password'
);

这很好,但有更直观的方法来获取POST数据吗?

我发现了这个StackOverflow answer,但没有帮助。

我还尝试将Request对象作为控制器方法中的参数,但没有结果。

1 个答案:

答案 0 :(得分:0)

基本上,我将首先验证表单是否有效。然后,我将绑定表单对象并使用该表单来获取一些数据。因此,代码应如下所示:

if ($request->getMethod('post') == 'POST') {
        // Bind request to the form
        $form->submit($request);
        // If form is valid
        if ($form->isValid()) {
            // Get data from the userName field
            $username = $form->get('userName')->getData();            
        }
}