php统计2个数据中同时出现的次数最多的单词

这是面试中经常问到的已到经典问题,主要考察的是对php一些冷门函数的掌握程度。


解答这个问题之前,先来学习下2个不经常使用的php数组函数.


array_count_values 统计数组中值的个数

array_intersect_key 求两个数组的key的交集


通过这两个函数,我们就可以很轻松地计算出2个数组中同时出现次数最多的单词是什么。


代码如下:


<?php

$arr = array('A', 'B', 'A', 'B', 'C');

$arr2 = array('C', 'B', 'A', 'D', 'A');

$arr_count = array_count_values($arr);

$arr2_count = array_count_values($arr2);

print_r($arr_count);
print_r($arr2_count);

$result = array_intersect_key($arr_count, $arr2_count);

print_r($result);



运行结果


php冷门数组函数