6

おそらく、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

4

3 に答える 3

14

配列を正しく宣言していません。
角かっこを削除する必要があります:[]

<?php 
$someArray=array('1','2','3','4','5','6','7'); // size 7
foreach($someArray as $value){ 
    echo $value;    
?>  <br />
<?php
}
?>
于 2012-11-21T01:47:01.987 に答える
3

試す:

<?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";
}
?>
于 2012-11-21T01:53:13.913 に答える
1

実際には、配列を別の配列に追加しています。

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

正しい方法は

$someArray=array('1','2','3','4','5','6','7'); 
于 2012-11-21T02:20:54.003 に答える