【初心者向け】php言語で「連想配列」を使う方法

こんにちは、

少し良い椅子を買おうか検討中のサトウです。

さて、本題に入りたいと思います。

phpの学習を始めると、「連想配列」を目にする機会も増えてくるのではないでしょうか。
「連想配列」の使い方や活用方法について、理解できない方も少なくないのでは、、、。と思い、今回は「連想配列」について分かりやすく説明していきます。

phpを学び始めた方や、「連想配列」について分からない方は、是非読んでみてくださいね。

連想配列とは

連想配列とは、文字(数値)をkey(キー)として値を設定した配列のことです。プログラミングにおける配列とは各値は順に0番目、1番目、2番目と番号が振られた箱に値が入っているものでした。連想配列は配列の「0番目」「1番目」といった数字部分を任意の文字(数値)を設定して利用することができます。

サンプルのコードでも確認してみましょう。

コードサンプル

実行結果

配列はkeyが[0][1][2]と決まっていますが、連想配列の場合は「500」「501」となっています。このkeyを自由に決めて配列を作ることができることが連想配列の最大の特徴です。これが連想配列の基本的な考え方となります。

連想配列の使い方

連想配列の基本的な考え方を理解できたところで、ここからは作り方や活用方法を説明していきます。

連想配列を作る

連想配列を作成する際は「key」の部分と「値」を決めて以下のように書きます。

配列名 = array(key名1 => 値1,key名2 => 値2,key名3 => 値3,key名4 => 値4);

配列名:任意で定義する
array():array()の中に以下を記述
key名:中身が入っている添字(番号)
:配列の中身

コードサンプル

実行結果

「春」「夏」といったkeyに「spring」「summer」という値が格納されているのが確認できましたね。

連想配列の中身を取得する

連想配列の中身を表示・展開していくにはforeach関数を使います。

foreach関数の書き方

foreach(配列名 as $key => $value){
実行する処理を記述
}

配列名:任意で定義する
array():array()の中に以下を記述
key名:中身が入っている添字(番号)
:配列の中身

コードサンプル

実行結果

foreachは配列の中身をすべて展開させる(ループ処理)ことが可能です。
foreachはデータベースから取得した情報を表示する際等に頻繁に利用する関数なので、是非様々な情報を入れて試してみてください。

連想配列(応用編)

ここまでは連想配列を作って展開する所まで解説しました。ここからは知っておけばさらにプラスになる連想配列に関連する関数を紹介していきます。

array_search:配列の値を検索し、値を返す

コードサンプル

実行結果

in_array:配列の値を検索し、trueかfalseを返す

コードサンプル

実行結果

array_shift:配列から先頭の値だけを取り出す

コードサンプル

実行結果

array_keys関数:連想配列のkey部分のみを取得する

コードサンプル

実行結果

参考:多次元配列

多次元配列は配列の中に配列が入っています。
少し複雑なので、ここでは参考に留めておきます。

コードサンプル

実行結果

連想配列の作成・foreachでの展開方法と併せて、参考にしてみてください。

まとめ

いかがでしたか?今回は、phpで連想配列について説明しました。

プログラミングを学び始めた頃は「配列」と「連想配列」違いがわからず、難しく感じることあると思います。ですが実際に連想配列を作り、関連する関数を使う練習をこなしていけば必ず理解できる日が来ますので、焦らずにゆっくりと理解を深めていってくださいね。

この記事が、phpの学習に役立つと嬉しいです。