ホームページ >バックエンド開発 >PHPの問題 >phpは二次元配列ですか?

phpは二次元配列ですか?

王林
王林オリジナル
2023-05-05 20:51:08403ブラウズ

PHP は、Web 開発で重要な役割を果たし、広く使用されているプログラミング言語です。 PHP では、配列は重要なデータ型です。 2 次元配列は配列タイプであり、別の配列が割り当てられている配列であることを意味します。この記事では、PHP の 2 次元配列について説明し、次の質問に答えます。 PHP は 2 次元配列ですか?二次元配列とは何ですか? 2 次元配列を作成および操作するにはどうすればよいですか?

PHP は 2 次元配列ですか?

PHP では、配列は 1 次元または多次元にすることができます。 1 次元配列は最も単純な配列タイプであり、1 セットのデータのみが含まれます。多次元配列は 2 つ以上の次元を持ち、複数の 1 次元配列で構成されます。したがって、PHP は 2 次元配列を使用するプログラミング言語になります。

2 次元配列とは何ですか?

2 次元配列は、他の配列を含む配列です。 PHP では、2 次元以上の配列から構成される配列です。 2 次元配列には要素ごとに配列が含まれるため、アクセスするときは 2 つのインデックスを指定する必要があります。1 つは外側の配列にアクセスするため、もう 1 つは内側の配列にアクセスするためです。

以下は、PHP の 2 次元配列の例です。

$students = array(
  array('name' => '张三','score' => array(80, 85, 92)),
  array('name' => '李四','score' => array(75, 68, 78)),
  array('name' => '王五','score' => array(89, 92, 91))
);

上の例では、$students は 3 つの要素を含む 1 次元配列です。各要素 どちらにも、'name''score' の 2 つのエントリが含まれます。 'name' は生徒の名前を表す文字列、'score' は 3 つのテストのスコアを含む 1 次元配列です。したがって、$students には他の 1 次元配列が含まれているため、2 次元配列になります。

2 次元配列を作成および操作するにはどうすればよいですか?

2 次元配列の作成には、1 次元配列を作成するのと同じ方法を使用できます。1 次元配列を外側の配列にネストするだけです。例:

$fruits = array(
  array('name' => '苹果', 'color' => '红色', 'price' => '3元/斤'),
  array('name' => '橘子', 'color' => '橙色', 'price' => '2元/斤'),
  array('name' => '香蕉', 'color' => '黄色', 'price' => '4元/斤')
);

最も外側の $fruits は 3 つの要素を含む 1 次元配列であり、各要素は 3 つのエントリを含む 1 次元配列です。ループを使用して 2 次元配列を作成することもできます。

$matrix = array();
for ($i = 0; $i < 5; $i++) {
  $row = array();
  for ($j = 0; $j < 5; $j++) {
    $row[] = $i * $j;
  }
  $matrix[] = $row;
}

上記のコードは、各セルに横座標と縦座標の積を含む 5 x 5 の行列を作成します。

2 次元配列の要素にアクセスするには、2 つのインデックスを使用する必要があります。1 つは外部配列にアクセスするため、もう 1 つは内部配列にアクセスするためです。たとえば、$fruits 2 次元配列内の最初の果物の色を見つけるには、次のコードを使用できます。

echo $fruits[0]['color'];

ネストされたループまたは条件ステートメントの場合は、インデックスにアクセスします。 2 次元配列の演算はそれに応じてより複雑になります。以下は、ループを使用して 2 次元配列 $students 内のすべての生徒のスコアにアクセスする例です。

for ($i = 0; $i < count($students); $i++) {
  echo $students[$i]['name'].': ';
  for ($j = 0; $j < count($students[$i]['score']); $j++) {
    echo $students[$i]['score'][$j].' ';
  }
  echo '<br>';
}

上記のコードでは、外側のループで変数 が使用されています。各生徒の情報にアクセスする $i 内部ループは、別の変数 $j を使用して、各生徒の学年の要素を走査します。

概要

PHP では配列は重要なデータ型であり、二次元配列は多次元配列の 1 つです。 2 次元配列は他の配列を含む配列であり、その各要素には 1 次元配列が含まれます。同じアプローチを使用して、外側の配列内に 1 次元配列をネストするだけで 2 次元配列を作成できます。 2 次元配列の要素にアクセスする場合、2 つのインデックスが使用されます。1 つは外側の配列にアクセスするため、もう 1 つは内側の配列にアクセスするためです。配列を操作する場合、ループと条件ステートメントを継続的に使用して、配列内のすべての要素を走査する必要があります。

以上がphpは二次元配列ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。