【On to PHP】連想配列ってなに?

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

久々のOnto PHPです。

連想配列とは?

連想配列と言う仕組みがあります。
マップ(map)、ハッシュ(hash)、辞書(dictionary)と言われるデータの形です。

以前、配列は個別の値にアクセスするために数値を使いました。
連想配列では数値の代わりに文字列を使います。

その名の通り辞書や本の索引など、名前と値の組み合わせを扱うのに便利な構造です。

例です。

動物の名前と住所(山ですが・・・)を$addressの連想配列の変数に格納しています。

$address= [];
$address['さる'] = '箕面山';
$address['しか'] = '若草山';
$address['いのしし'] = '六甲山';

1行目で配列を宣言・初期化、その後の行でそれぞれの名前と場所を保存しています。

さるは箕面山、しかは若草山、いのししは六甲山

です。

次は食べ物とその値段を格納する$priceの連想配列です。
先ほどは

$変数名 = [];

で初期化してから値を設定しましたが、次のように初期化し、複数の値を同時に設定することも可能です。

$price= [
 'りんご' => 100,
 'オレンジ' => 250,
 'いちご' => 450,
];

名前 => 値の形で矢印で名前と値の組み合わせを設定します。

各要素へのアクセス

これは通常の配列の同じくで

$変数名['インデックス文字列']

でアクセスできます。

上の例から

print $address['さる'];

とすると、「箕面山」の文字列が出力されます。

値を上書く時も同様です。

りんごの値段が95円に値下がりました。

$price['りんご'] = 95;

これで連想配列の中の値を書き換えることができます。

連想配列は頻繁に使います。配列は奥が深いです。
日常でも名前からものを探すことって結構多いですね。

それではまた!

Onto PHP 目次