使用php从嵌套数组创建数组

是否可以像这样创建数组:

Array
        (
            [Name] => John
            [Last Name] => Doe
            [Age] => 19
        )

从这样的嵌套数组中获取:


    [1] => Array
        (
            [Name] => John
        )

    [2] => Array
        (
            [Last name] => Doe 
        )

    [3] => Array
        (
            [Age] => 19
        )

嵌套数组是在循环时在数组中添加值时创建的

foreach ($users as $user) {
        $users[] = array($user['title'] => $user['value']);
    }
aqswdefr8888 回答:使用php从嵌套数组创建数组

更简化的@NigelRen解决方案是使用array_column

$output = array_column($users,'value','title');
,

您应该更改构建数组的方式,而不是对其进行进一步处理。您当前每次都在添加新数组...

$output = [];
foreach ($users as $user) {
    $output[$user['title']] = $user['value'];
}
,

您可以使用array_walk_recursive,如果您有嵌套数组,也可以使用

array_walk_recursive($a,function($v,$k) use (&$new){ $new[$k]=$v;});

演示:-https://3v4l.org/UGQou

,

您可以使用array_reduce

$result = array_reduce(array(
    array("Name"=>"John"),array("Last Name" => "Doe"),array("Age" => 19)
),function($a,$b){return array_merge($a,$b);},[]);
print_r($result);
本文链接:https://www.f2er.com/3146780.html

大家都在问