Php 使用多维数组中的getter返回多个结果

Php 使用多维数组中的getter返回多个结果,php,multidimensional-array,getter,Php,Multidimensional Array,Getter,我写了一个函数,在这个函数中,我必须返回同一个问题中的一个,并给出三个不同的答案 我设法提出了一个问题(我应该这样做,因为这三个问题都是同一个问题),但我很难找到所有答案 抛售$questions会返回所有三个问题,但my foreach只返回第一个 $questions = $this->getQuestionRepository()->findBy([ 'user' => $user, ]); $result = [];

我写了一个函数,在这个函数中,我必须返回同一个问题中的一个,并给出三个不同的答案

我设法提出了一个问题(我应该这样做,因为这三个问题都是同一个问题),但我很难找到所有答案

抛售$questions会返回所有三个问题,但my foreach只返回第一个

$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;

就这样!非常感谢@Kaleem我只有一个问题,为什么在数据库中显示9个结果,而我只有3个?我的代码有错误吗?