首页 >后端开发 >php教程 >php中的array_count_values()函数详解

php中的array_count_values()函数详解

PHP中文网
PHP中文网原创
2017-10-27 09:35:412362浏览

array array_count_values ( array $input )array_count_values() 返回一个数组,该数组用 input 数组中的值作为键名,该值在 input 数组中出现的次数作为值。统计数组中所有值出现的次数:

<?php
$a=array("A","Cat","Dog","A","Dog");
print_r(array_count_values($a));
?>

定义和用法

array_count_values() 函数用于统计数组中所有值出现的次数。

语法

array_count_values(array)

参数  描述

array    必需。规定需要统计数组中所有值出现次数的数组。    

array_values()//可以剥离数组中的关联键和数值键,或得有其元素的值所组成的数组
  array_keys()//获得所有的关联键和数值键
 利用这两个函数就可以非常方便简单的实现
 array_count_values()函数
 思路就是先用array_values()或得元素值数组
 再将元素值数组作为关联键新建一个数组(当然得先检查该关联键是否存在)
 然后再用foreach循环原来的数组将元素值作为新数组的关联键操作即可
 可能表达的不是很清楚,直接上代码
 
123456789101112131415161718192021222324252627282930313233343536   
 <?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 )

    

以上是php中的array_count_values()函数详解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn