如何删除多维数组的索引值

时间:2016-11-11 09:32:08

标签: php arrays codeigniter multidimensional-array

我有一个类似

的数组
$my_array = Array
(
    [0] => Array
        (
            [0] => rock
        )

    [1] => Array
        (
            [1] => James
        )

     [2] => Array
        (
            [2] => John
        )
)

我想要像这样的数组

array([0]=>rock [1]=>James [2]=> john);

我可以用这种形式获取数组。请帮帮我。

4 个答案:

答案 0 :(得分:1)

您的数组子项包含与父数组相同的键,因此您必须为两者使用相同的键!

$my_array = array(
      array( '0' => 'rock' ),
      array( '1' => 'James' ),
      array( '2' => 'John')
);

这将有效:

$n_a = [];
foreach($my_array $k => $ma) {
     $n_a[$k] = $ma[$k]; //here is the problem
}
print_r($n_a);

$n_a包含最终数组。

答案 1 :(得分:0)

这是一个解决方案:

$newArray = [];
foreach ($data as $value) {
    $newArray[] = $value[0];
}

$ newArray将保存新的数组结果

答案 2 :(得分:0)

像这样使用foreach

$my_array = array
(
array
    (
        '0' => 'rock'
    )
,
array
    (
        '1' => 'James'
    )
,
 array
    (
        '2' => 'John'
    )
);
print_r($my_array);

$newArray = [];
foreach ($my_array as $key => $value) {
    $newArray[] = $value[$key];
}
print_r($newArray);

答案 3 :(得分:0)

您可以通过一行代码实现这一目标:

call_user_func_array()array_merge()一起使用,

$final_array = call_user_func_array('array_merge', $array);