2013-07-23 70 views
1

我有一个多维数组,我想重复使用相同的数据相结合,例如 我有这个字段的数组:多维数组复制合并

array(5) { 
    [0]=> 
    array(2) { 
    ["data"]=> string(10) "05-30-2013" 
    ["link"]=> string() "unions" 
    } 
    [1]=> 
    array(2) { 
    ["data"]=> string(10) "06-03-2013" 
    ["link"]=> string() "potatoes" 
    } 
    [2]=> 
    array(2) { 
    ["data"]=> string(10) "06-03-2013" 
    ["link"]=> string() "apple" 
    } 
    [3]=> 
    array(2) { 
    ["data"]=> string(10) "06-03-2013" 
    ["link"]=> string() "banana" 
    } 
    [4]=> 
    array(2) { 
    ["data"]=> string(10) "05-30-2013" 
    ["link"]=> string() "pear" 
    } 
    } 

,我想在同一日期的结合一。

array(2) { 
    [0]=> 
    array(2) { 
    ["data"]=> string(10) "05-30-2013" 
    ["link"]=> string() "unions,pear" 
    } 
    [1]=> 
    array(2) { 
    ["data"]=> string(10) "06-03-2013" 
    ["link"]=> string() "potatoes,apple,banana" 
    } 
    } 

我该怎么做? 谢谢

回答

3
$arr = array (
    0 => array (
    "data" => "05-30-2013", 
    "link" => "unions"), 
    1 => array (
    "data" => "06-03-2013", 
    "link" => "potatoes"), 
    2 => array (
    "data" => "06-03-2013", 
    "link" => "apple"), 
    3 => array (
    "data" => "06-03-2013", 
    "link" => "banana"), 
    4 => array (
    "data" => "05-30-2013", 
    "link" => "pear")); 
$out = array(); 
foreach ($arr as $key => $value){ 
    if (array_key_exists($value['data'], $out)){ 
     $out[$value['data']]['link'] .= ', '.$value['link']; 
    } else { 
     $out[$value['data']] = array('data' => $value['data'], 'link' => $value['link']); 
    } 
} 
$out = array_values($out); 
print_r($out); 
+0

它工作谢谢:D – xicofcp