Bagaimana untuk mengira bilangan nilai dalam tatasusunan dalam PHP

WBOY
Lepaskan: 2024-03-19 12:30:02
ke hadapan
570 orang telah melayarinya

Editor PHP Xiaoxin akan memperkenalkan kepada anda cara menggunakan PHP untuk mengira bilangan setiap nilai dalam tatasusunan. Dalam PHP, fungsi ini boleh dicapai dengan menggunakan fungsi array_count_values(). Fungsi ini mengembalikan tatasusunan bersekutu yang mengandungi bilangan kejadian setiap nilai dalam tatasusunan. Dengan merentasi tatasusunan bersekutu ini, anda boleh mendapatkan nombor setiap nilai dalam tatasusunan. Kaedah ini mudah dan cekap, sesuai untuk pelbagai jenis tatasusunan, dan memberikan anda kaedah statistik yang mudah dan pantas.

PHP mengira bilangan setiap nilai dalam tatasusunan

Dalam php, terdapat beberapa kaedah untuk mengira bilangan setiap nilai dalam tatasusunan:

1. Gunakan fungsi array_count_values ​​​​

array_count_values Fungsi ini boleh mengira bilangan kejadian setiap nilai dalam tatasusunan dan mengembalikan tatasusunan pasangan nilai kunci, dengan kunci ialah nilai dan nilai ialah bilangan kejadian.

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

$counts = array_count_values($arr);

// 输出 $counts 数组
print_r($counts);
Salin selepas log masuk

Keluaran:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

2. Gunakan fungsi kiraan

count 函数可以统计数组中元素的个数。通过使用嵌套循环和 isset Fungsi boleh mengira bilangan kejadian setiap nilai dalam tatasusunan.

$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);
Salin selepas log masuk

Keluaran:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

3. Gunakan foreach loop

Gunakan gelung foreach untuk mengulangi setiap nilai dalam tatasusunan dan simpan bilangan kejadian dalam tatasusunan bersekutu.

$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);
Salin selepas log masuk

Keluaran:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

4. Gunakan fungsi kumpulan_mengikut (PHP 7+)

PHP 7+ memperkenalkan fungsi group_by, yang boleh mengumpulkan elemen dalam tatasusunan, di mana kunci ialah kunci kumpulan dan nilai ialah elemen dalam kumpulan.

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

$counts = group_by($arr)->map(function ($group) {
return count($group);
});

// 输出 $counts 数组
print_r($counts);
Salin selepas log masuk

Keluaran:

[a] => 2
[b] => 2
[c] => 1
[d] => 1
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Pilih kaedah

Kaedah yang manakah untuk dipilih bergantung pada saiz tatasusunan dan versi PHP yang digunakan. Untuk tatasusunan kecil, menggunakan fungsi array_count_values 函数通常是最快的。对于中型到大型数组,使用 count 函数或 foreach 循环可能是更好的选择。在 PHP 7+ 中,group_by biasanya paling pantas. Untuk tatasusunan sederhana hingga besar, menggunakan fungsi count atau gelung

mungkin merupakan pilihan yang lebih baik. Dalam PHP 7+, fungsi 🎜 menyediakan cara ringkas untuk mengumpulkan dan mengira nilai tatasusunan. 🎜

Atas ialah kandungan terperinci Bagaimana untuk mengira bilangan nilai dalam tatasusunan dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:lsjlt.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!