フリーランスとセルフマネジメントby アキユキ

フリーランスのお役立ちブログ+モチベーションを高く維持するためのセルフマネジメント術

配列(array)とは?PHP初心者向けに配列の概念を解説!

PHPがよくわからなくて調べごとをしているとよく出てくるのが配列(array)です。もしかしたらarrayってなんだっていうことで調べてたどりついた方もいるかも知れませんが、arrayは配列です。

この記事ではPHPによる配列の取り扱いについて簡単に解説をします。超初心者でもまずは概念を理解してもらいやすいように図多めで解説していきます。

配列は難しく捉えられがちですが、すごく便利でなおかつ概念を理解するぐらいは結構簡単です。

自分でPHPをゴリゴリ書いたりしないけど、WordPressとか使う関係である程度PHPを読みとけるようになっておきたいよ、という人はこの記事で十分ではないかと思います。

配列の概念を理解する

配列というのは複数のデータを整理して1つの大きな箱に入れるイメージです。

上図では0〜4までの複数の小箱にデータが入った状態で大きな箱にまとまっています。この複数のデータをまとめた大きな箱を配列といいます。このようにデータを1つの箱にまとめることができるのが配列です。

ちなみに0〜4の小箱番号を添字といい、配列の添字は0から始まります。そしてデータは値と呼ばれ、それぞれの小箱に入るイメージです。

もう少し具体的に説明をします。

例えば5店舗あるチェーン店の店舗名を配列変数shopに格納するとします。仮に店名をA,B,C,D,Eとします。その場合先ほどの配列のイメージ図は以下のようになります。

少しおさらいしますが、小箱にふられた番号は“添字”といいます。各小箱に入ったデータは“値”といわれます。

つまりこの配列変数$shopの中にはA,B,C,D,Eという各ショップの名前(値)が、添字に紐付いた形で格納されています。

配列変数を作ってみる

では実際に$shopという配列変数にA〜Eまで店名(値)を入れてみます。

これで$shopにA〜Eまでの店名が配列として格納されました。先ほどのイメージ図通り、キー0の小箱から順にA,B,C…と入っていきます。

配列変数から値を取り出す

では次に配列変数から値を取り出してみましょう。ここで重要なのは先ほど触れた通り、配列というのは“添字”と“値”が紐付いているということです。つまり配列変数からデータを取り出そうと思ったら、“添字”を指定してあげればいいのです。

表示結果

C

$shop[2]の“2”は添字を指定しています。添字は0から始まっているので、2というのは3番目のCですね。

配列変数から値をすべて取り出す

$shopという配列変数があればショップ一覧を表示することはとても簡単です。以下のようにforeach文で繰り返し処理をして配列の中身を取り出していきます。

出力結果は次のようになります

ABCDE

連想配列

添字は0から始まる番号ですが、番号だと管理しにくいので任意の文字列(キー)にすることもできます。これを連想配列といいます。例えばA〜E店ごとの売上を配列にする場合、下図のような連想配列にするとわかりやすいです。

連想配列で配列変数をつくって、C店の売上を表示させてみましょう。

表示結果

45万

C店の売上を出力する場合、キーが店名になっているので、データを取り出すときに先ほどのecho $shop[2];のように数字で指定するよりわかりやすいですよね。

配列が便利な理由

このように配列は1つの変数に複数のデータを入れることができ、さらにそれを繰り返し処理で一覧表示させたり、必要なデータだけ抜き出したりできます。

実際によく使われる配列は多次元配列といって配列の中にさらに配列が入っていたりします。

$shopの中にさらに配列が入っている感じですね。多次元配列だと、A~Eの店ごとの売上や都道府県などのデータも変数に格納することができます。

PHPの書き方も基本的な配列について理解していれば、多次元配列はすぐに理解はできます。

基本的な配列の概念を理解いただけたでしょうか。自分ですらすら書けなくても、配列の概念だけ理解しておけばとりあえずコードを読みとく力は格段にアップするのではないでしょうか。

特にWordPress開発などの現場では非プログラマーがPHPをいじることがよくありますが、配列でつまずくことも珍しくありませんので、配列の概念を紹介しました。



プロフィール

田中亮行
アキユキ

フリーランスWebデザイナー・エンジニア歴6年。主に企業のホームページの企画・デザイン・開発をしています。

ここでは自分の経験から感じたフリーランスにとって役立つ情報を発信しています。また、「やりたいことをやれる自分になりたい」そのために必要な“セルフマネジメント”についても執筆しています。フリーランスとしての生き方にも関係してくることが多いので参考にしてもらえたら嬉しすです(´ε` )

おすすめ書籍紹介