Symfony2数组到字符串转换

时间:2014-09-26 08:23:56

标签: php forms symfony web

我正在研究symfony2项目,我得到了这个例外。谁知道造成它的原因是什么?

注意:C:\ wamp \ www \ EmploiPublic \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ Form \ Extension \ Core \ ChoiceList \ ChoiceList.php第457行中的数组到字符串转换

protected function fixIndex($index)
{
    if (is_bool($index) || (string) (int) $index === (string) $index) { //this is line 457
        return (int) $index;
    }

    return (string) $index;
}

在调用$ form-> bind($ request)方法后生成错误;

   if ($request->isMethod('POST')) {

        $form->bind($request);
        $searchQuery = $form->getData();
    }

1 个答案:

答案 0 :(得分:1)

当bind()尝试将您的数据值映射到表单时,它会为Choice字段获取一个数组值,在该字段中它需要一个字符串值。

可能选择字段应允许多选,在这种情况下,您需要确保在创建选择控件时设置' multiple'为真(并考虑' expanded'选项)。

否则,除非您发布创建表单的代码以及映射到表单的类或数据结构,否则无法诊断您的问题。