Ошибка при просмотре элемента массива в 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 шт):
В 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>";
}
Но он выводит данные именно как массив.