$array=array(0=>array('univs_id'=>1001,'univs_name'=>'清华大学','province_id'=>110000,'province'=>'北京',),1=>array('univs_id'=>1002,'univs_name'=>'北京大学','province_id'=>110000,'province'=>'北京',),2=>array('univs_id'=>1003,'univs_name'=>'中国人民大学','province_id'=>110000,'province'=>'北京',),);这样类型的数组,如果不使用foreach进行遍历如何能达到下面的效果$array=array(1001=>array('univs_id'=>1001,'univs_name'=>'清华大学','province_id'=>110000,'province'=>'北京',),1002=>array('univs_id'=>1002,'univs_name'=>'北京大学','province_id'=>110000,'province'=>'北京',),1003=>array('univs_id'=>1003,'univs_name'=>'中国人民大学','province_id'=>110000,'province'=>'北京',),);试了array_map没有成功。
2 回答
千万里不及你
TA贡献1784条经验 获得超9个赞
$array=[你的数组]$newArray=array_reduce($array,function(&$newArray,$v){$newArray[$v['univs_id']]=$v;return$newArray;});$newArray就是你要的数组
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
$new_array=array_combine(array_column($array,'univs_id'),$array);array_column在php5.5以上才能使用低版本array_column实现if(!function_exists('array_column')){functionarray_column($array,$key){returnarray_map(function($element,$key){return$element[$key];},$array,array_fill(0,count($array),$key));}}
添加回答
举报
0/150
提交
取消