本文へスキップ
BecomeCoder

PHPコース · 第3章 配列と連想配列 · レッスン11

連想配列 ― 名前で引く

ブラウザで完結

導入

0, 1, 2 という番号ではなく、"name""price" といった名前で値を引きたいことがあります。これを可能にするのが連想配列です。1件のデータ(人・商品など)を表すのにぴったりです。

説明

連想配列は "キー" => 値 のペアを並べて作ります。取り出すときはキーを [ ] に書きます。

<?php
$user = [
    "name" => "田中",
    "age"  => 25,
    "city" => "東京",
];

echo $user["name"], "\n";   // 田中
echo $user["age"], "歳\n";  // 25歳

$user["email"] = "tanaka@example.com";   // あとから追加もできる
echo "{$user['name']}さんのメール: {$user['email']}\n";

キー => 値 の対応で覚えます。ダブルクォート文字列の中で連想配列を展開するときは、{$user['name']} のように { } で囲むのが安全です(中のキーはシングルクォート)。

連想配列も foreach で回せます。キーと値を両方使うと、一覧表示が簡単です。

<?php
$user = ["name" => "田中", "age" => 25, "city" => "東京"];

foreach ($user as $key => $value) {
    echo "{$key}: {$value}\n";
}

やってみよう

$user に好きなキー(例:"hobby" => "読書")を足して、foreach の出力にそれが増えることを確かめましょう。

演習

好きな本を表す連想配列 $book を、"title""author" のキーで作り、"『◯◯』(著者:△△)" の形で表示してください。

ヒント1を見る

$book = ["title" => "吾輩は猫である", "author" => "夏目漱石"];

ヒント2を見る

echo "『{$book['title']}』(著者:{$book['author']})\n";

実際に動かしてみよう

下のエディタにPHPを書いて「実行」を押すと、ブラウザ内で動く本物のPHP(php-wasm)で出力が表示されます。コードは必ず <?php で書き始めます。本文の例をそのまま試したり、書き換えたりしてみましょう(初回だけPHPの読み込みに少し時間がかかります)。

PHP — ブラウザ内で実行

ブラウザ内で動く本物のPHP(php-wasm / PHP 8.4)を読み込みます(初回のみ読み込みに少し時間がかかります)。
スクロールして表示された時点でも自動で読み込まれます。