Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk mengira bilangan nilai dalam tatasusunan dalam PHP
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);
Keluaran:
[a] => 2 [b] => 2 [c] => 1 [d] => 1
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);
Keluaran:
[a] => 2 [b] => 2 [c] => 1 [d] => 1
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);
Keluaran:
[a] => 2 [b] => 2 [c] => 1 [d] => 1
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);
Keluaran:
[a] => 2 [b] => 2 [c] => 1 [d] => 1
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
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!