0

我不仅试图计算某个值出现在数组中的次数,而且还将输出限制为偶数结果。

    $quotes = array(
      array(
        'quote' => 1,
        'from' => 'NC',
      ),
      array(
        'quote' => 2,
        'from' => 'MA',
      ),
      array(
        'quote' => 3,
        'from' => 'OH',
      ),
      array(
        'quote' => 2,
        'from' => 'MA',
      ),
      array(
        'quote' => 1,
        'from' => 'NC',
      ),  
    );

如何过滤此数组以计算每个“引用”的次数,然后显示计数 > 1 的结果。

4

1 回答 1

0
$result = array_map('unserialize',array_keys(array_diff(array_count_values(array_map('serialize',$quotes)),array(1))));

这个怎么运作:

  1. 制作一维数组serialize
  2. 计算所有值
  3. 删除所有使用计数1的值array_diff
  4. array_count_values值放入键中,将键作为值检索
  5. unserialize把它放回原来的设计

看到它工作:http ://codepad.viper-7.com/9RPjdK

于 2013-05-03T22:57:46.300 回答