为了账号安全,请及时绑定邮箱和手机立即绑定

二维数组中的一个【键的值】作为一维的 【键】

二维数组中的一个【键的值】作为一维的 【键】

慕姐4208626 2019-04-14 11:28:55
$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就是你要的数组
                            
查看完整回答
反对 回复 2019-04-14
?
一只萌萌小番薯

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)
);
}
}
                            
查看完整回答
反对 回复 2019-04-14
  • 2 回答
  • 0 关注
  • 351 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信