欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php中的array_count_values()函数详解

程序员文章站 2022-03-09 11:30:30
...

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()函数详解的详细内容,更多请关注其它相关文章!