Ошибка при просмотре элемента массива в php

Недавно начал учить php и уже столкнулся с глупыми ошибками. Не знаю в чем причина. В общем я хочу создать массив st, состоящий из 10 одинаковых массивов, и на каждой итерации цикла выводить элемент массива st

for ($i=0; $i<10 ; $i++) {
  $st[$i] = array('a1','a2','a3');
  echo "$st[$i]\n";
}

Т.е. я ожидаю примерно следующий результат:

'a1','a2','a3'
'a1','a2','a3'
...
'a1','a2','a3'

Но в итоге получаю следующую ошибку:

ArrayPHP Notice: Array to string conversion

p.s. Нагуглил, что есть более простой способ создания массива, а именно array_fill, но вопрос остается открытый. Хотелось бы разобраться в свой ошибке


Ответы (1 шт):

Автор решения: Denis640Kb

В php echo работает со строками. Вы же пытаетесь вывести массив, из-за чего и появляется подобная ошибка.
Чтобы вывести все данные в подобном виде, либо переберите этот массив, примерно так:

for ($i=0; $i<10 ; $i++) {
    $st[$i] = array('a1','a2','a3');
    foreach ($st[$i] as $kk){
        echo $kk.' ';
    }
    echo "<br>";
}

Либо используйте print_r

for ($i=0; $i<10 ; $i++) {
    $st[$i] = array('a1','a2','a3');
    print_r($st[$i]);
    echo "<br>";
}

Но он выводит данные именно как массив.

→ Ссылка