Задать вопрос
@hollanditkzn

Как сделать многомерный массив с выборками?

Мне нужно сделать тесты и пример чтобы все вывести я прикинул что лучше выводить целлый массив с вопросом и ответами. Только с объектами мне понятно как делать, а вот с массивом не очень. Или не стоит массив использовать для этих целей?
Вот моя реализация
public function actionTesting($id)
    {
        $testArr = [];
        $model = Questions::find()->where(['id_theme' => $id])->all();
        foreach ($model as $key => $value){
            $testArr[] = ['id' => $value->id, 'text' => $value->name];
            $answear = Answers::find()->where(['id_question' => $value->id])->all();

            //for ($i = 0; $i<count($answear); $i++){
            //    $testArr[$i] = array_push($testArr, $answear->name);
            //}
        }

        return $this->render('test', [
            'model' => $model,
            'testArr' => $testArr
        ]);
    }

То получаю такой массив
array (size=3)
  0 => 
    array (size=2)
      'id' => int 1
      'text' => string 'Вопрос нулевой' (length=79)
  1 => 
    array (size=2)
      'id' => int 2
      'text' => string 'Вопрос первый?' (length=64)
  2 => 
    array (size=2)
      'id' => int 4
      'text' => string 'Вопрос 2' (length=134)

Там нужно примерно такая структура
[key => [
'id' => id
'text' => text
'answear' => ['text' => text, 'answear' => answear]
]]
  • Вопрос задан
  • 86 просмотров
Подписаться 1 Простой 5 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы