如何反转此数组并使用重复值作为新数组中的键

时间:2012-09-14 13:21:14

标签: php arrays

我正在尝试让我的代码从一组过滤器中接受多个选择,这是我到目前为止通过复选框并选择元素的结果。

    Array (
[for-juniors] => product_category 
[for-men] => product_category
[coats] => product_category
[for-women] => product_category
[7-diamonds] => brand ) 

如您所见,传递了多个product_category。我需要知道一个函数或路由,以便能够将该格式转换为代码可以操作的格式。 E.g。

array('product_category' => 'for-juniors','for-men','coats','for-women', 'brand' => '7-diamonds');

我真的不知道从哪里开始我的阵列。该数组具有重复值“product_category”作为示例,它表示每个唯一的过滤器,键是此过滤器的选项。

任何提示都会有很大的帮助。

1 个答案:

答案 0 :(得分:6)

$grouped = array();
foreach ($input as $choice => $group) {
    $grouped[$group][] = $choice;
}

var_dump($grouped);