PHP

【PHP】配列の値が何回出現したかカウントする方法

本記事では、PHPで配列の値が何回出現したかカウントする方法について解説しています。

PHPの学習におすすめ参考書
気づけばプロ並みPHP 改訂版–ゼロから作れる人になる!

本書情報
出版社リックテレコム
著者谷藤 賢一
発売日2017/3/6
ページ数331ページ
レビュー
(Amazon)
(168件)
先輩くん
先輩くん
Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!
後輩ちゃん
後輩ちゃん
初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!

綺麗なコードが書けるようになる!
リーダブルコード-より良いコードを書くためのシンプルで実践的なテクニック

本書情報
出版社オライリージャパン
著者Dustin Boswell / Trevor Foucher
発売日2012/6/23
ページ数260ページ
レビュー
(Amazon)
(620件)
先輩くん
先輩くん
より良いコードを書きたい人におすすめの本だよ!
後輩ちゃん
後輩ちゃん
10以上前の書籍ですが、内容は今でも役に立つものばかりです!

array_count_values関数の使い方

配列の値が何回出現したかカウントしたい場合は、array_count_values関数を使用します。基本的な使い方は以下のとおりです。

$result = array_count_values($array);
構文解説
  • $result:$arrayに指定した配列の値が何回出現したかカウントしたものを連想配列の形式で代入される
  • $array:カウントしたい対象の配列を指定

$arrayに指定する配列要素は文字列または数値のみです。それ以外の要素が一つでも存在すると以下のエラーが返されます。

Warning: array_count_values(): Can only count string and integer values, entry skipped

array_count_values関数を使用して、配列の値が何回出現したかカウントするサンプルコードを用意したので、動作確認してみましょう。

<?php
$strArr = ['A', 'B', 'C', 'A', 'D', 'E', 'B', 'A'];

$result = array_count_values($strArr);
var_dump($result); // array(5) { ["A"]=> int(3) ["B"]=> int(2) ["C"]=> int(1) ["D"]=> int(1) ["E"]=> int(1) }

戻り値が代入されている変数$resultの中身を確認すると、連想配列の形式になっていることが確認できます。keyが配列要素の値でvalueがkeyの出現回数を表しています。

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村