【PHP基礎④】配列と連想配列(ハッシュ)について([ ]、=>、array)

PHP基礎

この記事の監修者

三谷 将大

1997年 愛知出身。
業界5年以上。実務経験後に独立し、30社以上のホームページ制作やマーケティング支援を行っている。

配列とは

簡単にいうと、複数の値の固まりです。
配列とは、複数の値を一つの変数にまとめて格納するためのデータ構造で、
値にはひとつひとつ番号(インデックス番号)が振られていて、その番号を使って各値にアクセスします。

通常の変数と比較すると

//通常の変数
<?php
$name1 = "Yamada";
$name2 = "Tanaka";
$name3 = "Satou";
?>
//配列
<?php
$names = ["Yamada", "Tanaka", "Satou"];
?>

配列の使い方

配列の格納(定義)の仕方

PHPでは、array関数もしくは短縮表記の[]を使って配列を定義します。

<?php
// array関数を使って配列を定義
$果物 = array("リンゴ", "バナナ", "オレンジ");

// 短縮表記を使って配列を定義
$野菜 = ["トマト", "キュウリ", "レタス"];
?>

配列の出力方法

配列の要素を出力するには、インデックス番号を指定してアクセスします。
番号は0から始まります。

<?php
$fruit= ["リンゴ", "バナナ", "オレンジ"];
echo $fruit[0]; // リンゴを出力
echo $fruit[1]; // バナナを出力
echo $fruit[2]; // オレンジを出力
?>

連想配列とは

連想配列(ハッシュ)とは、キー(key)と値(value)のペアを使ってデータを格納する配列の一種です。
連想配列を使うと、配列の中のそれぞれの値に名前をつけて管理することができます。
出力する際はインデックス番号ではなく、キーに定義した文字列を使用します。

連想配列の使い方

連想配列の格納(定義)の仕方

キーと値のペアは =>を使用して指定します。(値の名前 => 値)

<?php
// array関数を使って連想配列を定義
$学生 = array(

"名前" => "太郎",
"年齢" => 20,
"学年" => "2年生"
);

// 短縮表記を使って連想配列を定義
$学生 = [
"名前" => "太郎",
"年齢" => 20,
"学年" => "2年生"
];
?>

連想配列の出力方法

連想配列の要素を出力するには、キーを指定してアクセスします。

<?php
$学生 = [
    "名前" => "太郎",
    "年齢" => 20,
    "学年" => "2年生"
];
echo $学生["名前"]; // 太郎を出力
echo $学生["年齢"]; // 20を出力
echo $学生["学年"]; // 2年生を出力
?>

連想配列を使うことによって、それぞれの値がどういう意味を持つかが分かりやすくなっていますね。

多次元配列とは

多次元配列とは、配列の中にさらに配列を格納したデータ構造です。これを使うことで、より複雑なデータを管理することができます。
連想配列を応用して、連想配列の値をさらに連想配列にすることもできます。

<?php
// 学生の情報を含む連想配列を定義
$university= [
    "クラスA" => [
        "学生1" => ["名前" => "太郎", "年齢" => 20, "学年" => "2年生"],
        "学生2" => ["名前" => "花子", "年齢" => 21, "学年" => "3年生"]
    ],
    "クラスB" => [
        "学生3" => ["名前" => "次郎", "年齢" => 19, "学年" => "1年生"],
        "学生4" => ["名前" => "さくら", "年齢" => 22, "学年" => "4年生"]
    ]
];

// 特定の学生の情報を出力
echo $学校["クラスA"]["学生1"]["名前"]; // 太郎を出力
echo $学校["クラスB"]["学生4"]["年齢"]; // 22を出力
?>

多次元配列はより多くの値を1つの変数の中で管理できる書き方として活用しましょう。

タイトルとURLをコピーしました