PHP计算数组相同值出现次数的代码(array_count_values)完整攻略
array_count_values
函数是一个PHP数组操作函数,用于计算一个数组中各个值出现的次数。该函数接受一个数组作为参数,并返回一个带有出现次数作为值的关联数组。下面是该函数的语法:
array_count_values(array $array): array
其中,$array表示输入的数组,函数返回一个索引数组,关联数组的键为原数组的值,关联数组的值为原数组中该值出现的次数。
下面是一个最基本的用法示例:
<?php
$array = array(1, "hello", 1, "world", "hello");
print_r(array_count_values($array));
?>
输出结果:
Array
(
[1] => 2
[hello] => 2
[world] => 1
)
上面的示例中,输入的数组为$array
,其中1和"hello"分别出现了2次,"world"出现了1次,输出结果是一个关联数组,它的键为原数组的值,值为原数组中该值出现的次数。
下面是一个稍微复杂一些的示例,演示如何计算数组中字符串相同的子串出现的次数:
<?php
$array = array("apple", "banana", "orange", "cherry");
$substrings = array("an", "er");
$counters = array_fill_keys($substrings, 0);
foreach ($array as $string) {
foreach ($substrings as $substring) {
$counters[$substring] += substr_count($string, $substring);
}
}
print_r($counters);
?>
输出结果:
Array
(
[an] => 2
[er] => 3
)
上面的示例中,我们首先定义了一个原数组$array
和一个用于计数的子串数组$substrings
,接着,我们使用array_fill_keys
函数创建了一个初始值为0的关联数组$counters
,该数组以子串作为键,初始化计数器为0。接着,我们使用两个嵌套的循环来遍历原数组和子串数组。对于每个字符串,我们使用PHP内置函数substr_count
来计算该字符串中子串出现的次数,并累加到相应的计数器中。最后,我们打印输出了子串计数器数组$counters
的结果。
通过上面这些示例,我们可以看到array_count_values
函数的基本用法以及如何使用它来计算数组中字符串子串出现的次数。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php计算数组相同值出现次数的代码(array_count_values) - Python技术站