Return 多维数组 getter 的多个结果

Return multiple result with getter in multidimensional array

我编写了一个函数,其中我必须 return 一个具有三个不同答案的相同问题。

我设法提取了一个问题(我应该这样做,因为所有三个问题都是一样的),但我无法弄清楚如何提取所有答案。

转储 $questions return 所有三个,但我的 foreach return 只是第一个。

$questions = $this->getQuestionRepository()->findBy([
        'user'      => $user,
    ]);

    $result = [];
    foreach ($questions as $question) {
        $result['question'] = $question->getQuestion();
        foreach ($questions as $answer) {
            $result['answers'] = [$answer->getAnswer()];
        }
    }

    return $result;

结果:

"data": {
    "question": "What is your name?",
    "answers": [
        "First answer"
    ]
},

试试这个:

$questions = $this->getQuestionRepository()->findBy([
        'user'      => $user,
    ]);

    $result = [];
    foreach ($questions as $question) {
        $result['question'] = $question->getQuestion();
        foreach ($questions as $answer) {
            $result['answers'][] = $answer->getAnswer();
        }
    }

    return $result;