English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
このチュートリアルでは、PHPで1つの変数に複数の値を保存する方法を学びます。
配列は複雑な変数であり、1つの変数名の下に複数の値や値のセットを保存することができます。PHPスクリプト内で色を保存する場合、色をそれぞれの変数に保存する方法は以下のようになります:
<?php $color1 = "Red"; $color2 = "Green"; $color3 = "Blue"; echo $color1; echo "<br>"; echo $color2; echo "<br>"; echo $color3; ?>テストを見て‹/›
しかし、国/地域の州名や都市名が変数に保存されている場合、3つだけでなく100個かもしれません。各都市の名前をそれぞれの変数に保存することは非常に難しく、不適切です。配列がここで役立ちます。
3種類の配列を作成できます。これらは:
インデックス配列 — 数字キーを持つ配列。
連想配列 — 各キーに特定の値を持つ配列。
マトリックス配列 — 1つ以上の配列を含む配列。
インデックス配列または数字配列は、各要素に数字インデックスを持つ配列を保存します。以下の例では、インデックス配列の作成の2つの方法を示しています、最も簡単な方法は:
<?php //インデックス配列を定義します $colors = array("Red", "Green", "Blue"); // 配列構造を印刷 print_r($colors); ?>テストを見て‹/›
注意:インデックスまたは数字配列では、自動的にインデックスが割り当てられ、0から始まり、値はどんなデータ型でもできます。
これは以下の例と同等ですが、インデックスを手動で割り当てています:
<?php $colors[0] = "Red"; $colors[1] = "Green"; $colors[2] = "Blue"; // 配列構造を印刷 print_r($colors); ?>テストを見て‹/›
連想配列では、値に割り当てるキーは任意であり、ユーザーが定義した文字列です。以下の例では、配列がキーを使用してインデックス番号ではなく:
<?php //連想配列を定義します $ages = array("Peter"=>22, "Clark"=>32, "John"=>28); // 配列構造を印刷 print_r($ages ); ?>テストを見て‹/›
以下の例は前の例と同等ですが、連想配列の作成の別の方法を示しています:
<?php $ages["Peter"] = ""22"; $ages["Clark"] = "32"; $ages["John"] = "28"; // 配列構造を印刷 print_r($ages ); ?>テストを見て‹/›
マトリックス配列は、各要素が配列である配列です。子配列の各要素も配列で、さらにその内部に配列を含むことができます。マトリックス配列の例は以下の通りです:
<?php //マトリックス配列を定義 $contacts = array( array( "name" => "Peter Parker", "email" => "[email protected]", ), array( "name" => "Clark Kent", "email" => "[email protected]", ), array( "name" => "Harry Potter", "email" => "[email protected]", ) ); //ネストされた値にアクセス echo "ピーター・パーカーのメールアドレス id は: " . $contacts[0]["email"]; ?>テストを見て‹/›
var_dump()文またはprint_r()文のいずれかを使用して、どの配列の構造と値も確認できます。しかし、print_r()文は提供する情報が少し少ないです。以下の例を見てください:
<?php //配列を定義 $cities = array("London", "Paris", "New York"); //都市配列を表示 print_r($cities); ?>テストを見て‹/›
print_r()文は以下の出力を提供します:
Array ( [0] => London [1] => Paris [2] => New York )
この出力は配列の各要素のキーと値を表示しています。もっと詳しい情報を得るには以下の文を使用してください:
<?php //配列を定義 $cities = array("London", "Paris", "New York"); //都市配列を表示 var_dump($cities); ?>テストを見て‹/›
var_dump()文は以下の出力を提供します:
array(3) { [0]=> string(6) "London" [15) "Paris" [28) "New York" }
キーと値の他に、この出力は各要素のデータタイプも表示します、例えば6文字の文字列。在次の章では、あなたは配列の要素をどのようにソートするかを学びます。
在ループの章中、あなたは配列の値をどのように巡回するかを学びます。