2010-09-09 72 views
0

我有下一个阵列重构阵列中的PHP

Array ( 
    [0] => Array ([id] => 22 [title] => RankTitle) 
    [1] => Array ([id] => 32 [title] => RankTitle2) 
) 

我怎样才能得到下一个数组在PHP?:

Array ( 
    [22] => RankTitle 
    [32] => RankTitle2 
) 

回答

4

你可以这样做:

$new = array(); 
foreach ($old as $item) { 
    $new[$item['id']] = $item['title']; 
} 
1

待办事项你是这个意思?

$array = Array ( 
      [0] => Array ([id] => 22 [title] => RankTitle) 
      [1] => Array ([id] => 32 [title] => RankTitle2) 
     ) 

$nextArray = array($array[0]['id'] => $array[0]['title'], 
        $array[1]['id'] => $array[1]['title']); 
+0

Ohoho。它非常简单。太愚蠢了。 – pltvs 2010-09-09 09:17:19

+0

是的。但是如果我将100个元素添加到我的第一个数组中,则此解决方案会增长100倍。 – pltvs 2010-09-09 09:55:33

+0

是的,我只是向你展示这个概念,它绝对不会缩放= / – axsuul 2010-09-09 10:14:15

0

你可以这样说:

$newArray = array_combine(
    array_column($oldArray, 'column_to_be_key'), 
    array_column($oldArray, 'column_to_be_value'), 
);