【PHP】配列内の値をカウントする関数「array_count_values()」
今回はPHPで使用できる、配列内に同じ値があった場合、その値が配列内にいくつあるのか自動で整理してくれる関数、「array_count_values()」を使用してみたいと思います。
配列内の全ての値のカウントを一括でデータベースかしてくれる関数なのでとても便利です。
「array_count_values()」関数
|
1 |
array_count_values(値をカウントしたい配列); |
それではサンプルを見てみます。
|
1 2 3 4 5 6 7 8 9 |
<?php //array_count_values(値をカウントしたい配列); $array = array(1,10,10,20,"apple","banana","apple","BANANA"); $ans = array_count_values($array); print_r($ans); ?> |
実行結果は以下の通りです。
Array ( [1] => 1
[10] => 2
[20] => 1
[apple] => 2
[banana] => 1
[BANANA] => 1
)
「print_r()」で出力してみると、配列内の値の出現回数が集計された配列が出来上がっていることが分かると思います。文字列は大文字と小文字を区別して集計します。
要素一つのカウント数を取得する方法
|
1 2 3 4 5 6 7 8 9 |
<?php //array_count_values(値をカウントしたい配列); $array = array(1,10,10,20,"apple","banana","apple","BANANA"); $ans = array_count_values($array); echo $ans["apple"]; ?> |
サンプルコードのように、「$〇〇〇[“取得したい要素”]」とすることでカウント数を取得できます。
「array_count_values()」は要素の値をインデックスキーとして変換しているんですね。