ホームページ バックエンド開発 PHPチュートリアル PHPで配列内の値の数を数える方法

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

Mar 19, 2024 pm 12:28 PM
PHPプログラミング バックエンド開発 キーと値のペア

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 サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

vue.js文字列をオブジェクトに変換する方法は何ですか? vue.js文字列をオブジェクトに変換する方法は何ですか? Apr 07, 2025 pm 09:18 PM

json.parse()stringにオブジェクトを使用することは、最も安全で効率的です。文字列がJSON仕様に準拠していることを確認し、一般的なエラーを回避します。 Try ... CATCHを使用して例外を処理して、コードの堅牢性を向上させます。セキュリティリスクがあるeval()メソッドの使用は避けてください。巨大なJSONの弦の場合、パフォーマンスを最適化するために、チャンクされた解析または非同期解析を考慮することができます。

[ブラウザ]タブを閉じることと、JavaScriptを使用してブラウザ全体を閉じることを区別する方法は? [ブラウザ]タブを閉じることと、JavaScriptを使用してブラウザ全体を閉じることを区別する方法は? Apr 04, 2025 pm 10:21 PM

ブラウザのJavaScriptを使用して、タブを閉じることとブラウザ全体を区別する方法は?ブラウザの毎日の使用中、ユーザーは...

Java データ構造とアルゴリズム: クラウド コンピューティングの実践ガイド Java データ構造とアルゴリズム: クラウド コンピューティングの実践ガイド May 09, 2024 am 08:12 AM

クラウド コンピューティングでは、大量のデータを管理および処理するために、データ構造とアルゴリズムの使用が不可欠です。一般的なデータ構造には、配列、リスト、ハッシュ テーブル、ツリー、グラフなどがあります。一般的に使用されるアルゴリズムには、並べ替えアルゴリズム、検索アルゴリズム、グラフ アルゴリズムなどがあります。 Java の機能を活用することで、開発者は Java コレクション、スレッドセーフなデータ構造、および Apache Commons Collection を使用して、これらのデータ構造とアルゴリズムを実装できます。

バックエンド開発における Golang と Node.js の比較 バックエンド開発における Golang と Node.js の比較 Jun 03, 2024 pm 02:31 PM

Go と Node.js には、型指定 (強い/弱い)、同時実行性 (ゴルーチン/イベント ループ)、ガベージ コレクション (自動/手動) の違いがあります。 Go は高スループットと低レイテンシーを備えており、高負荷のバックエンドに適しています。Node.js は非同期 I/O に優れており、高い同時実行性と短いリクエストに適しています。この 2 つの実際のケースには、Kubernetes (Go)、データベース接続 (Node.js)、Web アプリケーション (Go/Node.js) が含まれます。最終的な選択は、アプリケーションのニーズ、チームのスキル、個人の好みによって異なります。

Vue AxiosによってURLが要求されていますか? Vue AxiosによってURLが要求されていますか? Apr 07, 2025 pm 10:12 PM

はい、Vue Axiosによって要求されたURLは、成功するためのリクエストが正しくなければなりません。 URLの形式は、プロトコル、ホスト名、リソースパス、オプションのクエリ文字列です。一般的なエラーには、プロトコルの欠落、スペルミス、重複スラッシュ、ポート番号の欠落、および誤ったクエリ文字列形式が含まれます。 URLの正しさを確認する方法:ブラウザアドレスバーに手動で入力するか、オンライン検証ツールを使用するか、リクエストでVue axiosのvalimatestatusオプションを使用します。

hadidb:pythonの軽量で水平方向にスケーラブルなデータベース hadidb:pythonの軽量で水平方向にスケーラブルなデータベース Apr 08, 2025 pm 06:12 PM

hadidb:軽量で高レベルのスケーラブルなPythonデータベースHadIDB(HadIDB)は、Pythonで記述された軽量データベースで、スケーラビリティが高くなっています。 PIPインストールを使用してHADIDBをインストールする:PIPINSTALLHADIDBユーザー管理CREATEユーザー:CREATEUSER()メソッド新しいユーザーを作成します。 Authentication()メソッドは、ユーザーのIDを認証します。 fromhadidb.operationimportuseruser_obj = user( "admin"、 "admin")user_obj。

Redisカウンターを実装する方法 Redisカウンターを実装する方法 Apr 10, 2025 pm 10:21 PM

Redisカウンターは、R​​edisキー価値ペアストレージを使用して、カウンターキーの作成、カウントの増加、カウントの減少、カウントのリセット、およびカウントの取得など、カウント操作を実装するメカニズムです。 Redisカウンターの利点には、高速速度、高い並行性、耐久性、シンプルさと使いやすさが含まれます。ユーザーアクセスカウント、リアルタイムメトリック追跡、ゲームのスコアとランキング、注文処理などのシナリオで使用できます。

Redisコマンドの使用方法 Redisコマンドの使用方法 Apr 10, 2025 pm 08:45 PM

Redis指令を使用するには、次の手順が必要です。Redisクライアントを開きます。コマンド(動詞キー値)を入力します。必要なパラメーターを提供します(指示ごとに異なります)。 Enterを押してコマンドを実行します。 Redisは、操作の結果を示す応答を返します(通常はOKまたは-ERR)。

See all articles