問題可能有些描述的不是很好,我簡單舉個栗子
//需求$arr = array('100', '101', '102', '103', '104', '105');$newArr = array(array('id'=>'100'), array('id'=>'101'), array('id'=>'102'), array('id'=>'103'), array('id'=>'104'), array('id'=>'105'));//我的處理方式是$newArr = [];foreach($arr as $val) { $newArr[] = array('id'=>$val);}
上述方法可以實現我的需求,還有什麼其他方式可以實現?我找到一個內建函數array_chunk($arr, 1, true)
但是,這個鍵名是設定不了的。
回複內容:
問題可能有些描述的不是很好,我簡單舉個栗子
//需求$arr = array('100', '101', '102', '103', '104', '105');$newArr = array(array('id'=>'100'), array('id'=>'101'), array('id'=>'102'), array('id'=>'103'), array('id'=>'104'), array('id'=>'105'));//我的處理方式是$newArr = [];foreach($arr as $val) { $newArr[] = array('id'=>$val);}
上述方法可以實現我的需求,還有什麼其他方式可以實現?我找到一個內建函數array_chunk($arr, 1, true)
但是,這個鍵名是設定不了的。
array_map()函數可以實現你的需求:
$arr = array('100', '101', '102', '103', '104', '105');function make($v){ return array('id'=>$v);}$newArr=array_map('make', $arr);var_dump($newArr);//多謝樓下壇友建議$newArr=array_map(function ($v){return array('id'=>$v);},$arr);
補充下,上面的寫法還可以用匿名函數使其更優雅。