如何在php中按值连接数组元素


How to concate array elements on value basis in php

我有一个这样的数组:

Array
(
    [attribute] => Array
        (
            [0] => sku
            [1] => sku
            [2] => attribute_set_id
        )
    [value] => Array
        (
            [0] => 1, 2, 3
            [1] => 3, 4
            [2] => 4
        )
)

在上面的数组中,属性就像键,值就是值。我想连接相同的键值,就像这里需要的sku将是(1,2,3,4)。我可以用组合数组把它们连接起来。结果数组将类似于

array('sku'=>'1,2,3,4',attribute_set_id=>'4'); 

我不认为有一个内置函数来做这项工作,你必须自己写算法,像

$result = array();
foreach ($array['attribute'] as $i => $key)
{
    $value = str_replace(' ', '', $array['value'][$i]);
    if (isset($result[$key]))
        $result[$key] = implode(',', array_unique(array_merge(explode(',', $result[$key]), explode(',', $value))));
    else
        $result[$key] = $value;
}