如何使用第一列作为键将php多维数组转换为新数组?

时间:2010-12-30 23:50:08

标签: php arrays multidimensional-array

我正在尝试使用数组函数(我想到了array_map或array_walk,但无法让它做我想做的事情),以便使用多维数组创建数组(如MySQL结果)从数组中的字段到新的字符串。

说我有一个像这样的数组:

$a = array(
    0 => array( 'id' => 1, 'name' => 'john' ), 
    1 => array( 'id' => 28, 'name' => 'peter' )
);

我想得到另一个这样的阵列:

$b = array(
    1 => array( 'name' => 'john' ), 
    28 => array( 'name' => 'peter' )
);

我可以通过一个简单的foreach循环来解决它,但我想知道是否有一种更有效的方法,使用内置函数。

1 个答案:

答案 0 :(得分:1)

array_maparray_walk不允许您更改密钥。一个foreach循环绝对是要走的路。在很多时候,Foreach甚至可以比array_walk / array_map更有效。