PHP作为一门弱类型的脚本语言,其变量无需声明,即用即得,其数组更是与其他强类型语言相差巨大,比如PHP数组中的关联键和数值键,其中最有趣的莫过于关联键了,这是在C++或JAVA中无法见到的,而且PHP还提供诸多强大的数组操作函数,比如
array_values()//可以剥离数组中的关联键和数值键,或得有其元素的值所组成的数组
array_keys()//获得所有的关联键和数值键
利用这两个函数就可以非常方便简单的实现
array_count_values()函数
思路就是先用array_values()或得元素值数组
再将元素值数组作为关联键新建一个数组(当然得先检查该关联键是否存在)
然后再用foreach循环原来的数组将元素值作为新数组的关联键操作即可
可能表达的不是很清楚,直接上代码
<?php
//统计数组中数据出现的频率
function mycount($arr)
{
if(is_array($arr))
{
$values = array_values($arr); //取得数组中数值
$count = array();//初始化数组
foreach ($values as $value)
{
if(!array_key_exists($value,$count))
{
//如果键不存在则创建关联键
$temp = array($value=>0);
//连接两个数组实际上相当于往里面添加元素
$count=array_merge($count,$temp);
}
}
foreach ($values as $key)
{
$count[$key]++;
}
return $count;
}
return $arr;
}
$a = array("ABC","FUCKYOU","ABC","Dady","PO","Dady","LIN","ABC","LIN","FUCKYOU");
$a = mycount($a);
print_r($a);
?>
运行结果
Array ( [ABC] => 3 [FUCKYOU] => 2 [Dady] => 2 [PO] => 1 [LIN] => 2 )
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。