Перебирать надо не варианты ответов, а вопросы, а через связь тянуть ответы к ним
$questions = Question::find()
->with('answers') //грузим одним запросом все ответы к выбранным вопросам
->all();
foreach ($questions as $question){
echo $question->name . '<br/>';
foreach ($question->answers as $answer){
echo $answer->text . '<br/>';
}
}
Но тут вопрос вообще в целесообразности хранить вопросы и ответы в отдельных таблицах, я бы хранил в одной. Ответы при этом в виде json и еще одна ячейка с ключом верного ответа.
id | question | answers | right
В afterFind приводим json в обычный php массив, с помощью JsonHelper и юзаем.
foreach (Question::find()->all() as $question){
echo $question->name . '<br/>';
foreach ($question->answers as $key=>$answer){
echo $answer . '<br/>';
}
}