icon
icon

PHPで連想配列を使う方法【初心者向け】

PHPで【連想配列】を使う方法をプログラミング初心者向けに解説した記事です。連想配列では、配列を、番号のかわりに名前をつけて管理することができます。そのため、データを入れたあとの扱いをわかりやすくすることが可能です。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

プログラミング初心者向けに、PHPの基礎を紹介する記事です。
今回は、PHPの連想配列について解説します。

なお本記事は、TechAcademyのPHPオンライン講座の内容をもとにしています。

また、開発環境はXAMPPを使っています。

そもそもPHPが何か分からない場合は、先にPHPとはの記事をご覧ください。

 

なお、今回の記事の内容は動画でもご覧いただけます。
テキストよりも動画の方が理解しやすいという場合はぜひご覧ください。

 

連想配列とは

PHPの配列とは、ひとつの変数に複数のデータを入れておくものでした。

連想配列とは、配列をもう少し使いやすくしたものです。

 

具体的に違いを説明すると、配列には、変数の箱の中身に 0,1,2……と背番号のように番号を振り、その番号を指定することでデータを指定するという性質がありましたが、連想配列では、番号のかわりに名前をつけて管理することができます

配列と連想配列

 

両者では使う箱は同じですが、連想配列では、データを入れたあとの扱いをわかりやすくするために、しきりごとに数字でなく名前を決めて、その名前ごとのデータを取り出せるのです。

 

大石ゆかり

配列のように[0]や[1]で値にアクセスするよりは、[‘apple’]のような名前でアクセスするほうが、わかりやすいですね。

田島悠介

そうだね。連想配列のほうが、値として入っているのが何なのか、わかりやすい場合が多いね。

大石ゆかり

でも、連想配列の場合、数値じゃなくて名前なので、繰り返し処理などで困りそうですね。

田島悠介

ちゃんと連想配列も順番に展開してくれる便利な仕組みがあったりするんだよ。とりあえず、連想配列の書き方を見てみよう!

 

実際に連想配列を書いてみよう

説明だけではわかりにくいかもしれませんので、実際に書いてみましょう。

まずは配列からです。

<?php
$price = array(“100円”, “300円”, “800円”);
echo $price[0];

100円

配列では、上記のように、(  )の中の 100円 を取り出したければ、echo で 0 を指定しましたね。

連想配列では、番号のかわりに好きな名前をつけてわかりやすく管理することができます。

ここでは、0,1,2,……のかわりに apple, orange, grape,……と名付けていくことにしましょう。すると、プログラムはこうなります。

 

$price = array(“apple” => “100円”, “orange” => “300円”, “grape” => “800円”);

=> は→ のような意味を持ち、apple は 100円 のラベルのようなイメージです。

 

そして、[ ]の中に 0 のかわりに apple と書くことで、100円 が取り出せます。

<?php
$price = array(“apple” => “100円”, “orange” => “300円”, “grape” => “800円”);
echo $price[“apple”];
?>

 

このように出力されました。

100円

連想配列についての解説は以上です。配列と合わせて使ってみてください。

 

[PR] PHPプログラミングで挫折しない学習方法を動画で公開中

foreach文で配列を呼び出す

foreach文を使うと、連想配列の中身に対して順に処理を行うことができます。たくさんのデータを一度に取得したい場合、一つ一つ出力していては大変なのでforeachで簡単に呼び出すことができます。

<?php
$fruit = array(“apple” => “100円”, “orange” => “300円”, “grape” => “800円”);
foreach($fruit as $key => $value){
echo “$key … $value \n”;
}

スクリーンショット 2016-05-27 17.21.42

おわりに

以上、PHPで書く連想配列について解説しました。

PHPをさらに勉強したい場合は、PHPで構文チェックを行う方法PHPとHTMLをまとめてコメントアウトする方法についても合わせて読んでみてください。

 

大石ゆかり

foreach文で、連想配列でも順番に展開されてますね。これは便利!

田島悠介

添え字に数字が使われてる場合は([1])、その数字を増やしてあげればいいんだけど、連想配列の場合はforeach文で展開するのがいいね。

大石ゆかり

連想配列でも、var_dumpやprint_r関数などで、全ての値を展開することは出来るんですか?

田島悠介

出来るんだ。連想配列や配列はしっかり覚えておきたいね。

 

PHPを勉強していて、
・もっと効率的に勉強したい
・誰かに聞きながら学びたい
・自分でWebサービスを作りたい
と思ったことはないでしょうか?

そんな方のために、TechAcademyではオンラインブートキャンプPHP/Laravelコースを提供しています。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、オリジナルWebサービスを開発することが可能です。

独学に限界を感じている場合はご検討ください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する