我的代码中有3个数组。
array1 = ['apple', 'orange', 'banana', 'guava', 'grapes'];
array2 = ['apple', 'jackfruits', 'banana', 'malta'];
array3 = ['banana', 'grapes, 'apple'];
现在我想从阵列中获得从高频到低频重复的一个阵列。
喜欢结果
array_result = ['apple', 'banana', 'grapes', 'orange', 'malta', 'jackfrouits'];
答案 0 :(得分:1)
试试这个,
<a class="pin" data-pin-do="buttonPin" href="https://www.pinterest.com/pin/create/button/?url=<?php echo base_url(); ?>Product/<?php echo $result->itemId; ?>&media=https://s-media-cache-ak0.pinimg.com/736x/17/34/8e/17348e163a3212c06e61c41c4b22b87a.jpg&description=<?php echo urlencode($result->title); ?>" ><i class="fa fa-pinterest-p"></i></a>
<div class="g-plus" data-action="share" data-annotation="none" data-href="http://bafwebsite.localhost/Product/720"></div>
array_count_values个状态计算数组的所有值。
arsort个状态按相反顺序对数组进行排序并保持索引关联
array_merge个状态合并一个或多个阵列
array_keys个状态返回数组的所有键或键的子集。
以下是demo。
试一试这应该有用。
答案 1 :(得分:1)
$array1 = ['apple', 'orange', 'banana', 'guava', 'grapes'];
$array2 = ['apple', 'jackfruits', 'banana', 'malta'];
$array3 = ['banana', 'grapes', 'apple'];
// Merge them and count all the values
$array_counts = array_count_values(array_merge($array1, $array2, $array3));
// Reverse order by counts
arsort($array_counts);
// Make an array based on the keys
$array_result = array_keys($array_counts);
答案 2 :(得分:1)
$array1 = ['apple', 'orange', 'banana', 'guava', 'grapes'];
$array2 = ['apple', 'jackfruits', 'banana', 'malta'];
$array3 = ['banana', 'grapes', 'apple'];
$arr = array_count_values(explode(',',implode(',',array_values($array1)).",".implode(',',array_values($array2)).",".implode(',',array_values($array3))));
arsort($arr);
print_r(array_keys($arr));
答案 3 :(得分:0)
您可以像这样使用array_count_values
函数:
print_r(array_count_values($array));
手册中的更多信息:http://php.net/manual/en/function.array-count-values.php