1

基本上,我有一个数组,其中每个元素都是元素的键/值对,如下所示:

[myArray] => Array
        [0] => Array
                [id] => 121
                [name] => Value1
        [1] => Array
                [id] => 125
                [name] => Value2
        [2] => Array
                [id] => 129
                [name] => Value3
                ....

我想将其转换为:

[myArray] => Array        
        [121] => Value1
        [125] => Value2
        [129] => Value3
        ....

所以'id'元素成为键,'name'元素成为值。PHP是否有内置的东西(或者有一个聪明的技巧)来做到这一点?如果有更清洁的东西可用,我想避免明显的 foreach() 循环......

4

2 回答 2

5

PHP 5.5 有一个array_column()函数可以为你做这件事,如果你有幸已经在运行它的话。提交它的开发人员也有一个向前兼容的版本,您可以为早期版本的 PHP 下载。

但是,很容易自己滚动,或者只foreach为您需要的特定情况使用循环。

于 2013-07-17T01:10:16.813 回答
0

如果你array_column有空,你可以这样做:

array_column($myArray, 'name', 'id')

不过,我认为这foreach更好的选择。

于 2013-07-17T01:15:05.130 回答