Php-arrays

提供:Dev Guides
移動先:案内検索

PHP-配列

配列は、1つ以上の類似したタイプの値を単一の値に格納するデータ構造です。 たとえば、100個の数値を格納したい場合は、100個の変数を定義する代わりに100個の長さの配列を定義するのが簡単です。

3種類の配列があり、それぞれの配列値は配列インデックスと呼ばれるID cを使ってアクセスされます。

  • 数値配列-数値インデックス付きの配列。 値は線形形式で保存およびアクセスされます。
  • 連想配列-インデックスとして文字列を持つ配列。 これは、厳密な線形インデックス順ではなく、キー値に関連付けて要素値を保存します。
  • 多次元配列-複数のインデックスを使用して、1つ以上の配列と値を含む配列にアクセスします

注意-組み込み配列関数は、関数リファレンスリンクで提供されています:/php/php_array_functions [PHP配列関数]

数値配列

これらの配列は、数値、文字列、および任意のオブジェクトを格納できますが、それらのインデックスは数値で表されます。 デフォルトでは、配列のインデックスはゼロから始まります。

以下は、数値配列を作成してアクセスする方法を示す例です。

ここでは、* array()*関数を使用して配列を作成しました。 この関数は、関数リファレンスで説明されています。

<html>
   <body>

      <?php
        /*First method to create array.*/
         $numbers = array( 1, 2, 3, 4, 5);

         foreach( $numbers as $value ) {
            echo "Value is $value <br/>";
         }

        /*Second method to create array.*/
         $numbers[0] = "one";
         $numbers[1] = "two";
         $numbers[2] = "three";
         $numbers[3] = "four";
         $numbers[4] = "five";

         foreach( $numbers as $value ) {
            echo "Value is $value <br/>";
         }
      ?>

   </body>
</html>

これは、次の結果を生成します-

Value is 1
Value is 2
Value is 3
Value is 4
Value is 5
Value is one
Value is two
Value is three
Value is four
Value is five

連想配列

連想配列は、機能の点では数値配列に非常に似ていますが、インデックスの点では異なります。 連想配列のインデックスは文字列として保持されるため、キーと値の間の強力な関連付けを確立できます。

従業員の給与を配列に格納するには、数値インデックス配列は最適な選択ではありません。 代わりに、従業員の名前を連想配列のキーとして使用でき、値はそれぞれの給与になります。

-印刷中に連想配列を二重引用符で囲まないでください。そうしないと、値が返されません。

<html>
   <body>

      <?php
        /*First method to associate create array.*/
         $salaries = array("mohammad" => 2000, "qadir" => 1000, "zara" => 500);

         echo "Salary of mohammad is ". $salaries['mohammad'] . "<br/>";
         echo "Salary of qadir is ".  $salaries['qadir']. "<br/>";
         echo "Salary of zara is ".  $salaries['zara']. "<br/>";

        /*Second method to create array.*/
         $salaries['mohammad'] = "high";
         $salaries['qadir'] = "medium";
         $salaries['zara'] = "low";

         echo "Salary of mohammad is ". $salaries['mohammad'] . "<br/>";
         echo "Salary of qadir is ".  $salaries['qadir']. "<br/>";
         echo "Salary of zara is ".  $salaries['zara']. "<br/>";
      ?>

   </body>
</html>

これは、次の結果を生成します-

Salary of mohammad is 2000
Salary of qadir is 1000
Salary of zara is 500
Salary of mohammad is high
Salary of qadir is medium
Salary of zara is low

多次元配列

メイン配列の各要素は、多次元配列にもできます。 そして、サブ配列の各要素は配列にすることができます。 多次元配列の値は、複数のインデックスを使用してアクセスされます。

この例では、3つの科目で3人の学生のマークを格納するために2次元配列を作成します-

この例は連想配列です。同じ方法で数値配列を作成できます。

<html>
   <body>

      <?php
         $marks = array(
            "mohammad" => array (
               "physics" => 35,
               "maths" => 30,
               "chemistry" => 39
            ),

            "qadir" => array (
               "physics" => 30,
               "maths" => 32,
               "chemistry" => 29
            ),

            "zara" => array (
               "physics" => 31,
               "maths" => 22,
               "chemistry" => 39
            )
         );

        /*Accessing multi-dimensional array values*/
         echo "Marks for mohammad in physics : " ;
         echo $marks['mohammad']['physics'] . "<br/>";

         echo "Marks for qadir in maths : ";
         echo $marks['qadir']['maths'] . "<br/>";

         echo "Marks for zara in chemistry : " ;
         echo $marks['zara']['chemistry'] . "<br/>";
      ?>

   </body>
</html>

これは、次の結果を生成します-

Marks for mohammad in physics : 35
Marks for qadir in maths : 32
Marks for zara in chemistry : 39