PHP 配列: 連想、多次元
⚡ スマートサマリー
PHPの配列は、関連する複数の値を単一の変数に格納できるため、関連データのグループ化や処理が容易になります。このチュートリアルでは、数値配列、連想配列、多次元配列、配列比較演算子、およびcount、sort、ksort、asortなどのコア関数について解説します。

PHP 配列とは何ですか?
PHP 配列は、複数の関連データを XNUMX つの変数に格納する変数です。
配列は、中にスロットがあるチョコレートの箱だと考えてください。
四角は配列そのものを表し、チョコレートが入っている部分は配列に格納されている値を表しています。
以下の例は、この仕組みを説明するものです。
数値配列
数値配列は、アクセスキーとして数値を使用します。
アクセス キーは、配列変数内のメモリ スロットへの参照です。
アクセスキーは、配列要素を読み取ったり、新しい値を割り当てたりする際に使用されます。
以下は、PHPで数値配列を作成するための構文です。
配列の例
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
ここに、
- 「$variable_name…」は変数の名前です。
- 「[n]」は要素のアクセスインデックス番号です。
- 「value」は配列要素に割り当てられる値です。
それでは、数値配列の例を見てみましょう。
配列変数に保存したい 5 本の映画があるとします。
これを行うには、以下に示す例を使用できます。
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
ここでは、
各映画には、その値を取得または変更するために使用されるインデックス番号が割り当てられます。以下のコードを参照してください。
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
出力:
Once upon a time in China Eastern Condors
上記の例からわかるように、同じ性質の複数の値を扱う場合、PHP で配列を操作するのは非常に簡単で柔軟です。
あるいは、上記の配列変数は、次のコードを使用して作成することもできます。
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
出力:
Replacement Killers
PHP連想配列
連想配列は、IDキーに説明的な名前を使用するという点で、数値配列とは異なります。
以下は、PHPで連想配列を作成するための構文です。
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
ここに、
- 「$variable_name…」は変数の名前です。
- 「['key_name']」は要素のアクセスキーです
- 「value」は配列要素に割り当てられる値です。
ある集団の人々がいて、それぞれの名前に対して性別を割り当てたいと仮定しましょう。
連想配列を使えばそれが可能です。以下のコードはそのためのものです。
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
ここに、
出力:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
連想配列は、データベースからデータを取得する際にも非常に役立ちます。
フィールド名は ID キーとして使用されます。
PHP 多次元配列
これらは、他のネストされた配列を含む配列です。
多次元配列の利点は、関連するデータをグループ化できることです。
それでは、PHPの多次元配列を実装する具体的な例を見ていきましょう。
下の表は、カテゴリ別の映画のリストを示しています。
| 映画のタイトル | カテゴリー |
|---|---|
| ピンクの豹 | コメディ |
| ジョン・イングリッシュ | コメディ |
| ダイ·ハード | 行動 |
| 消耗品 | 行動 |
| ロード・オブ・ザ・リング | エピック |
| ロミオとジュリエット | ロマンス |
| 見ざる聞かざる | コメディ |
上記の情報は多次元配列として表現できます。 以下のコードは実装を示しています。
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
ここに、
出力:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
同じ配列を定義する別の方法は次のとおりです。
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
出力:
Pink Panther
注:映画の数値配列は、カテゴリの連想配列の中にネストされています。
PHP 配列: Operaトー
| Operator | 名前 | 詳細説明 | どうやってするの | 出力 |
|---|---|---|---|---|
| x+y | Union | 両方の配列の要素を結合します |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
配列([id] => 1 [値] => 10) |
| x == y | 等しい | 2つの配列を比較し、等しい場合はtrueを返します。 |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
真または 1 |
| x === y | 同じ | 値と データ型 |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
偽または 0 |
| x != y、x <> y | 等しくない | 2つの配列が等しくない場合はtrueを返します。 |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
偽または 0 |
| x !== y | 同一ではない | 2つの配列の値または型が同一でない場合はtrueを返します。 |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
真または 1 |
PHP配列関数
カウント機能
count関数は、PHP配列に含まれる要素の数を数えるために使用されます。以下のコードにその実装例を示します。
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
出力:
3
is_array 関数
is_array関数は、変数が配列であるかどうかを判定するために使用されます。それでは、is_array関数を実装した例を見てみましょう。
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
出力:
1
並び替え
この関数は、配列をその値に基づいてソートするために使用されます。
値が英数字の場合は、アルファベット順に並べ替えます。
値が数値の場合は、昇順に並べ替えます。
既存のアクセスキーを削除し、新しい数字キーを追加します。
この関数の出力は数値配列です。
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
出力:
Array ( [0] => Female [1] => Female [2] => Male )
クソート
この関数は、キーを使用して配列をソートするために使用されます。次の例はその使用方法を示しています。
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
出力:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
品揃え
この function は、値を使用して配列をソートするために使用されます。ping キーについて説明します。以下の例は、その使用方法を示しています。
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
出力:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
なぜ配列を使用するのでしょうか?
- 配列の内容は、より多くの値を格納するように拡張できます。
- 配列を使うと、サーバーのログイン情報など、関連する情報を簡単にグループ化できます。
- 配列は、よりクリーンなコードを作成するのに役立ちます。



