首页 > 解决方案 > 按值重新索引数组

问题描述

我有一个表格数组

$a = array(
   'a' => 0,
   'b' => 0,
   'c' => 1
);

并想要一个形式的数组

array(
   0 => array('a','b'),
   1 => array('c')
);

最有效的方法是什么?

标签: phparrays

解决方案


我认为您只需要使用 a foreach,因为array_flip这会使您丢失重复项:

$b = array();
foreach ($a as $k => $v) {
    $b[$v][] = $k;
}

var_dump($b);

推荐阅读