お世話になります。
配列内の要素の中で一番出現回数の少ない要素を取得したいのですが、いい方法が思いつかず質問させていただきました。
###実現したいこと
例)$array = ['A', 'B', 'A', 'B', 'A']
このような配列があったとすると、出現回数の低い値は'B'となります。
なのでこの場合は'B'と表示したいです。
また、出現回数の低い値が複数ある場合のために、結果を全て配列に格納します。
試したこと
$array_mincount = min(array_count_values($array));
array_count_values()
関数で配列のそれぞれの要素を取得し、min()
関数でその中で最小の要素をさがす
➝当たり前だが、要素の数が表示される
array_count_values()関数で出現回数の低い値をどうにかして取得できないかと思ったのですが、なかなか厳しいです。
$array_count = array_count_values($array); $keys = array_keys(min($array_count));
array_count_valuesで個々の要素を取得し、その要素のkeyを取得するためにarray_keysを使用し、一番少ない要素を取得するためminを使用しました。
以上です。
わかる方がいらしたらご回答よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー