所以我有一个多维数组:
Array
(
[0] => Array
(
[User_ID] => 1
[Username] => A NAME
)
[1] => Array
(
[User_ID] => 2
[Username] => ANOTHER NAME
)
)
我已经看到了如何压扁它......但是我想这样做并让它像这样:
Array
(
[1(As in the User_ID value)] => A NAME
[2] => ANOTHER NAME
)
基本上创建一个数组,其中User_ID为键,Username为值。我该怎么做呢?如果它有助于ID和名称列表可能有数百长,那么它不是我正在使用的静态项目数。
答案 0 :(得分:3)
如果你有PHP 5.5+,那么实际上有一个可以做到这一点的内置函数!它被称为array_column
。
$newArray = array_column($yourArray, 'Username', 'User_ID');
如果您的PHP版本低于5.5,那么您可以在代码中包含此内容以在https://github.com/ramsey/array_column中填充array_column
答案 1 :(得分:3)
对于PHP版本< 5.5或Rocket Hazmat缺少垫片described,这会将您的阵列转换为必要的格式:
<?php
$originalArray= array(
0 => array(
'User_ID' => 1,
'Username' => 'A NAME'
),
1 => array(
'User_ID' => 2,
'Username' => 'ANOTHER NAME'
)
);
$newArray = array();
foreach ($originalArray as $element)
{
$newArray[$element['User_ID']] = $element['Username'];
}
?>