數組:
Array( [0] => Array ( [id] => 1 [menu_collapse] => 超級菜單 [menu_items] => 寫文章 [cid] => 1 ) [1] => Array ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ) [2] => Array ( [id] => 3 [menu_collapse] => 維護菜單 [menu_items] => 系統管理使用者 [cid] => 2 ))
如何把上面數群組轉換這樣的?
Array( [0] => Array ( [id] => 1 [menu_collapse] => 超級菜單 [menu_items] => 寫文章 [cid] => 1 ) [1] => Array ( [new] => Array ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ) ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ))
回複內容:
數組:
Array( [0] => Array ( [id] => 1 [menu_collapse] => 超級菜單 [menu_items] => 寫文章 [cid] => 1 ) [1] => Array ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ) [2] => Array ( [id] => 3 [menu_collapse] => 維護菜單 [menu_items] => 系統管理使用者 [cid] => 2 ))
如何把上面數群組轉換這樣的?
Array( [0] => Array ( [id] => 1 [menu_collapse] => 超級菜單 [menu_items] => 寫文章 [cid] => 1 ) [1] => Array ( [new] => Array ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ) ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ))
$arr = [['id' => 1, 'menu_collapse' => '超級菜單', 'menu_items' => '寫文章', 'cid' => 1, ], [ 'id' => 2, 'menu_collapse' => '維護菜單', 'menu_items' => '管理資料', 'cid' => 2, ], [ 'id' => 3, 'menu_collapse' => '維護菜單', 'menu_items' => '系統管理使用者', 'cid' => 2, ]];$result=[];$res=[];foreach($arr as $k=>$v){ $result[$v['cid']][]=$v;}foreach($result as $key=>$value){ if(count($value) == 1) { $res[$key]=$value[0]; } else{ $res[$key]['new']=$value; }}echo '';print_r(array_values($res));/*Array( [0] => Array ( [id] => 1 [menu_collapse] => 超級菜單 [menu_items] => 寫文章 [cid] => 1 ) [1] => Array ( [new] => Array ( [0] => Array ( [id] => 2 [menu_collapse] => 維護菜單 [menu_items] => 管理資料 [cid] => 2 ) [1] => Array ( [id] => 3 [menu_collapse] => 維護菜單 [menu_items] => 系統管理使用者 [cid] => 2 ) ) ))*/
你只能遍曆數組來處理了。