获取二维数组中指定 Key 对应的 Value 重复次数

2019-02-27  本文已影响0人  answer6

场景是,统计二维数组中指定的键对应的值出现几次,找到之后再做自己想要的处理。记录下用的几个函数。


数据库取出来的样例数据赋值给 $data

  1. 通过 array_column( $data, 'product_sku' ) 获取到 sku 的一维数组, 在用 array_count_values 计算数组中值出现的个数
$arr = array_count_values( array_column( $data, 'product_sku' ) );

array_column( $data, 'product_sku' ) 处理的结果, 为了方便展示用的 json 格式

处理结果如下


$arr 的信息
  1. 最后在用 array_filter 过滤下。如果出现的次数大于 1 的就 return 出来。
$res    =   array_filter($arr, function ( $value ) {
            if ($value > 1) {
                return $value;
            }
        });

$res 的值就是重复的数组集合了

//$data  源数据
$arr     =   array_count_values( array_column( $data, 'product_sku' ) );
$res    =   array_filter($arr, function ( $value ) {
            if ($value > 1) {
                return $value;
            }
        });
// $res 最终结果
上一篇 下一篇

猜你喜欢

热点阅读