Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 类型为“的预期参数”;布尔值&引用;“字符串”;在Symfony2中生成问卷时给出_Php_Forms_Symfony_Formbuilder - Fatal编程技术网

Php 类型为“的预期参数”;布尔值&引用;“字符串”;在Symfony2中生成问卷时给出

Php 类型为“的预期参数”;布尔值&引用;“字符串”;在Symfony2中生成问卷时给出,php,forms,symfony,formbuilder,Php,Forms,Symfony,Formbuilder,我正在尝试使用symfony 2管理一份调查问卷,代码部分工作正常。 我得到这个错误 应为“Boolean”类型的参数,给定“string” 我在控制器中的代码如下: public function generateForm($questionnaire, $evaluation) { //Get question array collection $questions = $questionnaire->getQuestions(); $formBuilder

我正在尝试使用symfony 2管理一份调查问卷,代码部分工作正常。 我得到这个错误

应为“Boolean”类型的参数,给定“string”

我在控制器中的代码如下:

public function generateForm($questionnaire, $evaluation)
{


    //Get question array collection
    $questions = $questionnaire->getQuestions();
    $formBuilderQuestionnaire = $this->createFormBuilder();
    $i = 0;


    //Make a loop for each question
    foreach($questions as $question)
    {

        //Create an answer form
        $answer = new Answers($question, $evaluation);
        $formBuilder = $this->get('form.factory')->createNamedBuilder($i, 'form', $answer);


        //Add a answer text box with the question as label
        $formBuilder->add('answerText' , 'textarea',  array(
            'required' => false,
            'label' => $question->getQuestionText() 
        ));



        if($question->getHasMultipleAnswers() == 1)
        {
            //Get subquestions
            $subQuestions = $question->getSubQuestions();

            //Initiate var j
            $j = 0;

            //Make a loop for each subanswers of a question
            foreach($subQuestions as $subQuestion)
            {
                if($question->getMultipleAnswersAllowed() == 1)
                {
                    //Create a subanswer entity for each subQuestion
                    $subAnswer = new subAnswers($subQuestion, $answer);

                    //Create a sub answer form
                    $formBuilder2 = $this->get('form.factory')->createNamedBuilder($j, 'form', $subAnswer);

                    $formBuilder2->add('value');

                    $j++;
                }
                else
                {
                    //Get the different choices
                    $choices[$subQuestion->getId()] = $subQuestion->getSubQuestionsText();
                }
            }

            if($question->getMultipleAnswersAllowed() == 0)
            {
                $formBuilder->add('AnswerChoice', 'choice', array(
                    'choices'   => $choices,
                    'required'  => true,
                    'expanded'  => true
                ));
            }
            else
            {
                if(isset($formBuilder2))
                {
                    $formBuilder->add($formBuilder2);
                }
            }

            $choices = NULL;

        }

        $formBuilderQuestionnaire->add($formBuilder);

        $i++;

    }

    //Create the form
    $form = $formBuilderQuestionnaire->getForm();
    return $form; 
}
我的实体
子应答
的属性“value”为布尔值

当我删除
$formBuilder->add($formBuilder2)时,错误消失了但我需要使问题的复选框出现

你对解决这个问题有什么想法吗