我有一个这样的数组:
array( array(), array(), array(), array() );
主数组中的数组包含 4 个键和它们的值。所有数组中的键都是相同的,如下所示:
array( 'id' => 'post_1',
'desc' => 'Description 1',
'type' => 'type1',
'title' => 'Title'
);
array( 'id' => 'post_2',
'desc' => 'Description 2',
'type' => 'type2',
'title' => 'Title'
);
所以我想创建另一个数组并提取 id
和 type
值并将它们放入一个新数组中,如下所示:
array( 'post_1' => 'type1', 'post_2' => 'type2'); // and so on
此数组中的键将是 id
键旧数组的值,它们的值将是 type
键的值。
那么有可能做到这一点吗?我试着搜索 php.net Array Functions但是不知道用哪个函数?
最佳答案
PHP 5.5 引入了一个数组函数,它可以完全满足您的需求。 我正在回答这个问题,希望它可以帮助将来解决这个问题的人。
执行此操作的函数是 array_column
.
为了得到你想要的,你会写:
array_column($oldArray, 'type', 'id');
要在较低版本的 PHP 上使用它,请使用已接受的答案或查看此函数在 PHP 中的实现方式并使用此库:https://github.com/ramsey/array_column
关于php - 如何将特定的数组键和值提取到另一个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10328780/