【On to PHP】多次元配列ってなに?

こんにちは、さるまりんです。

On to PHP、少しずつ続きを進めています。

今回は
「多次元配列ってなに?」
です。

多次元配列とは?

ここがわかると、Webアプリのデータ構造がぐっと身近になります。

これまで、配列や連想配列を見てきました。

多次元配列は、
「配列の中に、さらに配列が入っている」
状態のことです。

言い換えると、

  • 箱の中に、別の箱がある
  • ひとつの情報に、いくつかの情報がまとまっている

そんなイメージです。

なんか便利そうですよね。

例を見てみましょう

動物と、その情報をまとめてみます。

$animals = [
  'さる' => [
    'place' => '箕面山',
    'food'  => 'バナナ'
  ],
  'しか' => [
    'place' => '若草山',
    'food'  => '草'
  ],
];

ここでは、

  • 動物の名前
  • 住んでいる場所
  • 好きな食べ物

を、ひとかたまりで管理しています。

どうやって値を取り出すの?

配列が入れ子になっているので、
アクセスも段階的になります。

print $animals['さる']['place'];

これで
「箕面山」
が表示されます。

「さる」を取り出して、
その中の「place」を見る、という順番です。

なぜ多次元配列が便利なの?

情報が増えてきたとき、

  • 住所
  • 年齢
  • 特徴

などを、関連づけたまま管理できます。

Webアプリでは、

  • ユーザー情報
  • 商品情報
  • 記事一覧

ほとんどの情報が、この形で扱われています。

実際のWebアプリでは、設定ファイルとして使われることも多いです。

<?php
return [
    'env' => 'prd',
    'sections' => [
        'top' => [
            'title' => 'トップページ',
            'bgcolor' => 'sky-blue',
        ],
        'menu' => [
            'title' => 'メニュー',
            'bgcolor' => 'mint-green',
        ],
        'map' => [
            'title' => '地図',
            'bgcolor' => 'light-gray',
        ],
    ],
];

少しだけ先の話

実は、

  • データベースの結果
  • JSON
  • APIのレスポンス

も、似たような構造をしています。

今は
「こういう形があるんだ」
と感じてもらえれば大丈夫です。

配列は、まだまだ奥が深いです。
でも、ここまで来たら一段レベルアップです。

それでは、また!

Onto PHP 目次