-1

多次元連想配列を作成し、その値を表示しようとしています。もともと以下のコードでは、数字の代わりに文字列名がありました。ただし、これにより「未定義の定数」エラーが発生しました。文字列を数字に置き換えると、出力されるのは「arrayarrayarray」だけです。誰か教えてくれませんか

(a) 数字の代わりに文字列を入れる方法

(b) 「配列」を出力するだけでなく、配列内の値を取得する方法。

「echo $myArray[1];」をコーディングすると その配列内の値の代わりに「配列」を出力します。

  $myArray = array( 
            0 => array
        (
        "physics" => 35,        
        "maths" => 30,      
        "chemistry" => 39       
        ),
        1 => array
                (
                "physics" => 30,
                "maths" => 32,
                "chemistry" => 29
                ),
                2 => array
                (
                "physics" => 31,
                "maths" => 22,
                "chemistry" => 39
                )
         );

     echo  count ($myArray);
    ?>
    <p>

    <?php

       echo $myArray[1];

     ?>

     <p>
     <?php

      // On the line below, loop through the array and output
      // *all* of the values to the page:



    for ($i= 0 ; $i < 3 ; $i++)

    echo $myArray[$i];


      ?>

ありがとう。

4

2 に答える 2

2

Arrays in PHPを少し読んでも問題ないことは明らかです。

ネストされた配列であるため、作成echo $myArray[1];すると出力さarrayれます。

連想配列を使用するには、「数字の代わりに文字列を配置する」と言うように、次の例を使用できます。

$myArray = array( 
    "Johnson" => array (
       "physics" => 35,        
       "maths" => 30,      
       "chemistry" => 39       
    ),
    "Smith" => array (
       "physics" => 35,        
       "maths" => 30,      
       "chemistry" => 39       
    ));
于 2013-07-10T14:01:14.193 に答える
1
echo $myArray[1]['physics'];

表示されます

35

と:

foreach( $myArray as $childArray )
{
    echo $childArray['physics'];
}

印刷されます:

35
30
31

しかし、@Trogvar がすでにあなたに言ったように:ドキュメントを読んでください。

于 2013-07-10T14:01:40.943 に答える