最近在学习使用array_column函数,发现一个比较实用的用法。很多时候,我们在获取的二维数组都是索引数组,在某些时刻使用时并不方便,最好是能够以某个字段的值作为键名,这样就能更好的使用了。绝大多数人都是使用foreach进行遍历,然后创建一个新的数组,以遍历中的某个字段值为键名,现在有个更简单的方法实现这个功能
- $array = array(
- array('id'=>'3','name'=>'tom'),
- array('id'=>'5','name'=>'jerry'),
- array('id'=>'24','name'=>'spike')
- );
-
- $newArray1 = array_column($array,NULL,'id');
- var_dump($newArray1);
- //结果
- array(
- '3'=>array('id'=>'3','name'=>'tom'),
- '5'=>array('id'=>'5','name'=>'jerry'),
- '24'=>array('id'=>'24','name'=>'spike')
- )
-
- $newArray2 = array_column($array,NULL,'name');
- var_dump($newArray2);
- //结果
- array(
- 'tom'=>array('id'=>'3','name'=>'tom'),
- 'jerry'=>array('id'=>'5','name'=>'jerry'),
- 'spike'=>array('id'=>'24','name'=>'spike')
- )