PHPで配列内の値の数を数える方法

WBOY
リリース: 2024-03-19 12:30:02
転載
569 人が閲覧しました

php Editor Xiaoxin は、PHP を使用して配列内の各値の数を数える方法を紹介します。 PHP では、この関数は array_count_values() 関数を使用して実現できます。この関数は、配列内の各値の出現数を含む連想配列を返します。この連想配列を走査することで、配列内の各値の数を取得できます。この方法はシンプルかつ効率的で、さまざまなタイプの配列に適しており、便利で高速な統計手法を提供します。

PHP は配列内の各値の数をカウントします

php には、配列内の各値の数を数える方法がいくつかあります。

1. array_count_values 関数を使用します

array_count_values この関数は、配列内の各値の出現回数をカウントし、キーと値のペアの配列を返すことができます。ここで、キーは値、値は出現回数です。

$arr = ["a", "b", "c", "a", "b", "d"];

$counts = array_count_values($arr);

// $counts 配列を出力します
print_r($counts);
ログイン後にコピー

出力:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

2. カウント関数を使用する

count この関数は、配列内の要素の数をカウントできます。ネストされたループと isset 関数を使用すると、配列内の各値の出現回数をカウントできます。

$arr = ["a", "b", "c", "a", "b", "d"];

$counts = [];

foreach ($arr as $value) {
if (!isset($counts[$value])) {
$counts[$value] = 0;
}
$counts[$value] ;
}

// $counts 配列を出力します
print_r($counts);
ログイン後にコピー

出力:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

3. foreach ループを使用する

foreach ループを使用して、配列内の各値を反復処理し、出現数を連想配列に保存します。

$arr = ["a", "b", "c", "a", "b", "d"];

$counts = [];

foreach ($arr as $value) {
$counts[$value] = isset($counts[$value]) ? $counts[$value] 1 : 1;
}

// $counts 配列を出力します
print_r($counts);
ログイン後にコピー

出力:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

4. group_by 関数を使用する (PHP 7)

PHP 7 では、配列内の要素をグループ化できる group_by 関数が導入されました。キーはグループのキー、値はグループ内の要素です。

$arr = ["a", "b", "c", "a", "b", "d"];

$counts = group_by($arr)->map(function ($group) {
カウントを返します($group);
});

// $counts 配列を出力します
print_r($counts);
ログイン後にコピー

出力:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

選び方方法

どの方法を選択するかは、配列のサイズと使用する PHP バージョンによって異なります。小さな配列の場合、通常は array_count_values 関数を使用するのが最も速いです。中規模から大規模の配列の場合は、count 関数または foreach ループを使用する方が良い選択となる可能性があります。 PHP 7 では、group_by 関数により、配列値をグループ化してカウントする簡潔な方法が提供されます。

以上がPHPで配列内の値の数を数える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:lsjlt.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!