如何在PHP中从关联数组中删除二级索引


How to remove second level index from associative array in PHP

print_r($unique_id);

Array
(
    [0] => Array
        (
            [LeadEmailDetail] => Array
                (
                    [id] => 97
                    [email] => vikastyagismartbuzz8@gmail.com
                )
        )
    [1] => Array
        (
            [LeadEmailDetail] => Array
                (
                    [id] => 93
                    [email] => vikastyagi87@gmail.com
                )
        )
    [2] => Array
        (
            [LeadEmailDetail] => Array
                (
                    [id] => 94
                    [email] => vikastyagismartbuzz9@gmail.com
                )
        )
)

但我想要像一样

Array
(
    [0] => Array
        (
            [id] => 97
            [email] => vikastyagismartbuzz8@gmail.com
        )
    [1] => Array
        (
            [id] => 93
            [email] => vikastyagi87@gmail.com
        )
    [2] => Array
        (
            [id] => 94
            [email] => vikastyagismartbuzz9@gmail.com
        )
)

试试这个:

array_map('array_shift', $unique_id);

尝试这个

foreach($unique_id as $k => $v)
{
    $array[] = array_shift($v);
}

简单循环为您完成了一项任务:

foreach ($array as &$v) {
    $v = current($v);
}
unset($v);

演示

p.s.不像其他示例那样创建另一个数组(内存泄漏)

print_r( array_column( $unique_id, 'LeadEmailDetail' ) );

需要PHP>=5.5.0

谁构建$unique_id数组?我建议以你喜欢的形式构建它

要解决您的问题。。。开箱即用快速脏

<?php
    $new = array();
    foreach($unique_id as $arr) {
       foreach ($arr['LeadEmailDetail'] as $a) {
         $new[] = $a;
       }
    }
    print_r($new);