2012/04/01更新

[PHP] 連想配列の使い方を纏めてみた

このエントリーをはてなブックマークに追加      

今日はPHPの連想配列について学んだので、その事をメモして残しておきたいと思います。

f:id:yoheiM:20110627150802j:image



連想配列とは

キーと値という形で保持出来る配列。Javaでゆうと、java.util.Mapみたいなもの。JavaScriptなど他の言語にもあるデータ形式です。一つのキーに一つの値をひもづける。値を参照する場合には、キーを指定する事で値を参照出来る。こーゆうデータ型なんだ~。ほほほ。

keyvalue
apple100円
orange50円
peach500円


連想配列を作成する

連想配列を作成するには色々な方法がありますが、以下2通りが一般的なようです。

// 作り方 その1
$array01 = array();
$array01['apple']  = '100円';
$array01['orange'] = '50円';
$array01['peach']  = '500円';

これは、配列を作成して、一つずつKeyとValueを指定する方法です。

// 作り方 その2
$array02 = array(
     'CAR' => '1000円',
     'TV'  => '2000円',
     'PC'  => '3000円'
);

これは配列を作成するときに、値も設定する方法です。arrayの中で key => value の形で複数の値を指定出来ます。




連想配列に値を追加する

値を追加するには以下のようにします。

// 配列への追加
$array01['grape'] = '300円';

作り方その1と同じようにすれば、値が追加出来るようです。



配列から特定のキーと値を削除する

// 配列から削除
unset($array01['grape']);

unset関数を利用して、配列の特定のキーと値を破棄します。unset関数は配列用の関数というわけではないですが、配列から値を削除するときにも使えるようです。unsetについては以下リンクを参照ください。

http://jp.php.net/manual/ja/function.unset.php



連想配列をソートしてみる

キーによるソートは以下のように実装します。

// キーによるソート(昇順)
ksort($array01);

// キーによるソート(降順)
krsort($array01);

ksort関数を利用して昇順ソート、krsort関数を利用して降順ソート出来ます。


値によるソートは以下のように実装します。

// 値によるソート(昇順)
asort($array01);

// 値によるソート(降順)
arsort($array01);

asort関数を利用して昇順ソート、arsort関数路w利用して降順ソートが実現出来ます。

これらソート用の関数には、第2引数を利用してソートの設定も行えるようです。詳しくは以下リンクをご参照ください。

http://jp.php.net/manual/ja/function.ksort.php

http://jp.php.net/manual/ja/function.krsort.php

http://jp.php.net/manual/ja/function.asort.php

http://jp.php.net/manual/ja/function.arsort.php



連想配列の時のforeach文

連想配列の時のforeach文は以下のように記載するようです。

// 連想配列のforeach文
foreach ($array01 as $key => $value) {
     echo "key: $key , value: $value \n";
}

foreachのかっこの中に、$key => $valueと記載する事で、キーと値のどちらにもアクセスすることが出来ます。




最後に

PHPは配列に対する様々な関数が充実している印象を受けました。調べるともっと便利な事がジャンじゃん出てきそう。今後もPHPの学習を頑張ろっと。







こんな記事もいかがですか?

RSS画像

もしご興味をお持ち頂けましたら、ぜひRSSへの登録をお願い致します。