为了账号安全,请及时绑定邮箱和手机立即绑定

转换多维数组(php)

转换多维数组(php)

PHP
江户川乱折腾 2022-01-14 17:12:39
我目前正在努力将 PHP 中的这个数组转换为更简化的数组。这是我的数组开始存储在$array:   [0] => Array       (           [name] => name-1           [value] => xXX       )   [1] => Array       (           [name] => name-2           [value] => YYY       )我想从这个数组转换到这个简化的数组$array_new:   [0] => Array       (           [name-1] => xXX       )   [1] => Array       (           [name-2] => YYY       )我很遗憾不知道要开始...有人可以帮我吗?编辑:通过 array_column() 或 foreach 循环转换数组后,我仍然无法使用 $array_new['name-2']; 获得正确的数据;
查看完整描述

3 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

您可以使用array-column来做到这一点。文件说:

array_column ( 数组 $input , 混合 $column_key [, 混合 $index_key = NULL ] ) : 数组

这样做:

$first_names = array_column($array, 'value', 'name');

现场示例:3v4l


查看完整回答
反对 回复 2022-01-14
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

使用 foreach:


<?php


$items =

[

    [

        'plant' => 'fern',

        'colour' => 'green'

    ],

    [

        'plant' => 'juniper',

        'colour' => 'blue'

    ]

];


foreach($items as $item) {

    $output[][$item['plant']]=$item['colour'];

}

var_dump($output);

输出:


array(2) {

    [0]=>

    array(1) {

    ["fern"]=>

    string(5) "green"

    }

    [1]=>

    array(1) {

    ["juniper"]=>

    string(4) "blue"

    }

}


查看完整回答
反对 回复 2022-01-14
?
慕少森

TA贡献2019条经验 获得超9个赞

问题

好吧,这是我看到很多初学者都在处理的问题。有点创意:


回答

//Let's get your old array:

$old = [

   0 => [

      'name' => 'name-1',

      'value' => 'xXX'

   ],

   1 => [

      'name' => 'name-2',

      'value' => 'YYY'

   ]

];


//Let's create an array where we will store the new data:

$result = [];


foreach($old as $new) { //Loop through

   $result[$new['name']] = $new['value']; //Store associatively with value as value

}


var_dump($result);

结果:

Array[2] => [

   [name-1] => xXX,

   [name-2] => YYY

];


查看完整回答
反对 回复 2022-01-14
  • 3 回答
  • 0 关注
  • 277 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号