2 D配列のキー値を同じにする配列の再編成

2604 ワード

Array (      [0] => Array          (              [title] => 111              [name] =>           )
       [1] => Array          (              [title] => 111              [name] =>           )
       [2] => Array          (              [title] => dd              [name] =>           )
       [3] => Array          (              [title] => dd              [name] =>           )
       [4] => Array          (              [title] => dd              [name] =>           )
  )
titleと同様に、配列を再結合するには:Array (      [0] => Array          (              [title] => 111              [name] =>  ,          )
       [1] => Array          (              [title] => dd              [name] =>  , ,          )
  )
実装コード:
function array_group_concat($ar, $field, $group_by) {
  $res = array();   foreach($ar as $row) {     $g = $row[$group_by];     if(isset($res[$g])) $res[$g][$field] .= ',' . $row[$field];     else $res[$g] = $row;   }   return array_values($res); } $arr=array(array('title'=>'111','name'=>'上海'),array('title'=>'111','name'=>'杭州'),array('title'=>'dd','name'=>'上海'),array('title'=>'dd','name'=>'寧波'),array('title'=>'dd','name'=>'無錫');print_r(array_group_concat($arr, 'name', 'title'));