概要

[['name' => '太郎', 'age' => 20], ['name' => '花子', 'age' => 22], ...] のように 連想配列を要素として並べた配列 は、実務で最頻出のデータ形だ。1 件 1 件が「ユーザー」「注文」「商品」のような レコード (オブジェクト) で、その並びが「一覧」になる。DB の SELECT 結果・JSON 配列・CSV のヘッダー付きパース結果 はすべてこの形で返ってくる。

この章で身につけたいのは「1 件 = 連想配列、その並び = 添字配列」という構造の読み方。$users[0]['name'] のように「添字でレコードを取り出し → キーでフィールドを取り出す」という 2 段階アクセスができれば、データベース風のデータをすぐ扱えるようになる。これは ch08 (連想配列の中に配列) と キーと添字の順が逆 で、混同しないことが重要。

走査の基本は foreach ($users as $user) { echo $user['name'] . "\n"; }外側 foreach で 1 件ずつレコードを取り出し、内側ではキー (['name'] など) でフィールドを取り出す。レコード数が増えても書き方は変わらない。次章 ch10 ではこの形を 条件検索 に発展させ、ch11 では CSV を ヘッダー付きで この形にパースする方法も扱う。「テーブルの行 = 連想配列、テーブル全体 = 連想配列の配列」のイメージを持っておくと、後の章のデータ構造がすべて繋がって見える。

学習目標

ドリル

no 内容
01 users 配列から全員の名前を foreach で出力

演習: ドリル 01 — 全員の名前を出力

問題

次のデータが与えられています。

$users = [
    ['name' => '太郎', 'age' => 20],
    ['name' => '花子', 'age' => 25],
    ['name' => '次郎', 'age' => 18],
];

foreach を使って、全員の名前を 1 行ずつ上から順に出力してください。

期待される出力:

太郎
花子
次郎

ヒント

この章を AI に聞く

  1. 「ch09 — 連想配列の配列 (オブジェクトリスト)」のつまずきやすいポイントを、初学者向けに3つ教えてください

    💬 ChatGPT 📘 Claude ✨ Gemini

  2. 「ch09 — 連想配列の配列 (オブジェクトリスト)」について、自分の手で試せる練習問題を3つ出してください (難易度を上げながら)

    💬 ChatGPT 📘 Claude ✨ Gemini

  3. 「ch09 — 連想配列の配列 (オブジェクトリスト)」を学んだ後、次に学ぶと良いトピックは何ですか?理由も教えてください

    💬 ChatGPT 📘 Claude ✨ Gemini

🎉 受講お疲れさまでした!

ch09 — 連想配列の配列 (オブジェクトリスト)」を読み終えました。
学んだことを誰かに教えると、もっと記憶に残ります。

X で共有 Hatena LINE