将键值对数组转换为关联数组

时间:2014-12-18 15:32:45

标签: php arrays loops

我目前有一个数组:

[1] => Array
    (
        [0] => 100011
        [1] => 1
    )

[2] => Array
    (
        [0] => 100013
        [1] => 1
    )

[3] => Array
    (
        [0] => 100022
        [1] => 1
    )

[4] => Array
    (
        [0] => 100025
        [1] => 1

我想获取每个数组(1,2,3,4等)的第一个子项(意思是[0])并将其放入一个新数组中。我知道我需要循环并将值赋给新数组。只是不知道该怎么做。

最终结果将是:

$ final(新数组的名称)的值为100013,100022,100025等。

我的真实最终结果:

我需要保持相同的顺序,因为我将使用array array_combine ( array $keys , array $values )创建100013作为键,1作为值,100022作为键,1作为值,100025作为键,1为值。

如果您知道更快的完成方式,我们将不胜感激。

感谢。

3 个答案:

答案 0 :(得分:7)

如果我理解你的话,可以通过以下方式获得最终结果:

array_combine(array_column($arr, 0), array_column($arr, 1));

或者,以更传统的方式:

$result = [];
foreach ($arr as list($key, $value)) {
    $result[$key] = $value;
}

答案 1 :(得分:0)

<?php
$results = array();
foreach($array as $item)
{
  $results[] = $item[0];
}
?>

答案 2 :(得分:0)

if(PHP 5&gt; = 5.5.0)

 $first_names = array_column($records, 0);
 print '<pre>';
 print_r($first_names);

另一种方式,

function one_dimension($n) 
{
 return $n[0];
}

$result =array_map("one_dimension", $records);
print '<pre>';
print_r($result);