php foreach echo prints «Массив» как значение

Возможно, мне просто сложно понять, как PHP обрабатывает массивы.

Я пытаюсь распечатать массив, используя цикл foreach. Все, что я могу понять, это слово «Массив».

<?php $someArray[]=array('1','2','3','4','5','6','7'); // size 7 foreach($someArray as $value){ echo $value; ?> <br /> <?php } ?> 

Это выдает следующее:

 Array 

Мне трудно понять, почему это так. Если я определю массив вверх, как указано выше, он напечатает «Массив». Мне кажется, что мне приходится вручную определять все … что означает, что я должен делать что-то неправильно.

Это работает:

 <?php $someArray[0] = '1'; $someArray[1] = '2'; $someArray[2] = '3'; $someArray[3] = '4'; $someArray[4] = '5'; $someArray[5] = '6'; $someArray[6] = '7'; for($i=0; $i<7; $i++){ echo $someArray[$i]."<br />"; } ?> 

Почему не будет работать foreach?

вот ссылка, чтобы увидеть его в действии >> http://phpclass.hylianux.com/test.php

Solutions Collecting From Web of "php foreach echo prints «Массив» как значение"

Вы не объявили массив правильно.
Вы должны удалить квадратные скобки: [] .

 <?php $someArray=array('1','2','3','4','5','6','7'); // size 7 foreach($someArray as $value){ echo $value; ?> <br /> <?php } ?> 

Пытаться:

 <?php $someArray = array('1','2','3','4','5','6','7'); // size 7 foreach($someArray as $value){ echo $value . "<br />\n"; } ?> 

Или:

 <?php $someArray = array( 0 => '1', 'a' => '2', 2 => '3' ); foreach($someArray as $key => $val){ echo "Key: $key, Value: $val<br/>\n"; } ?> 

на самом деле, вы добавляете массив в другой массив.

 $someArray[]=array('1','2','3','4','5','6','7'); 

правильный путь был бы

 $someArray=array('1','2','3','4','5','6','7');