ホームページ >バックエンド開発 >PHPチュートリアル >大規模な配列内の空の要素を効率的に数えるにはどうすればよいですか?

大規模な配列内の空の要素を効率的に数えるにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-04 21:36:12186ブラウズ

How Can I Efficiently Count Empty Elements in a Large Array?

配列の値を効率的にカウントする

さまざまな要素を含む配列では、多くの場合、特定の値の出現をカウントする必要があります。この場合、配列内の空の要素の数を数えようとします。

問題

次の配列を考えてみましょう:

$array = array('', '', 'other', '', 'other');

課題は、空の値を持つ要素の数を効率的にカウントすることです。ループと比較を使用した単純なアプローチでは、数百の要素を持つ大規模な配列の場合、30 秒を超えます。

効率的なソリューション

効率を高めるために、array_count_values 関数を利用できます。この関数は、キーが配列値を表し、対応する値がそれぞれのカウントを表す連想配列を作成します。

function with($array) {
    $counts = array_count_values($array);
    return $counts[''];
}

配列の例では、'' は空の値を表します。 $counts[''] にアクセスすることで、空の要素の数を直接取得し、ループベースのアプローチと比較して速度が大幅に向上します。

使用法

このソリューションを使用するには、単に with 関数を呼び出して、検査する配列を渡します。たとえば、指定された配列の場合:

$count = with($array); // $count will be 3

以上が大規模な配列内の空の要素を効率的に数えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。