繁体   English   中英

如何删除数组中的键并在php中重建数组

[英]how to delete a key in array and rebuild the array in php

我得到以下数组

array(3) {
  [0] =>
  array(1) {
    'Investment' =>
    array(15) {
      'id' =>
     string(36) "53d64bec-031c-4732-b2e0-755799154b1b" ...

我想删除投资密钥,并执行新数组

    array(3) {
  [0] =>
  array(15) {
      'id' =>
     string(36) "53d64bec-031c-4732-b2e0-755799154b1b" ...

我该怎么做?

我会这样将数组传递给array_map

$array = [
    [ 'Investment' => [ 'id' => '13d64bec-031c-4732-b2e0-755799154b1b' ] ],
    [ 'Investment' => [ 'id' => '23d64bec-031c-4732-b2e0-755799154b1b' ] ],
    [ 'Investment' => [ 'id' => '33d64bec-031c-4732-b2e0-755799154b1b' ] ],
    [ 'Investment' => [ 'id' => '43d64bec-031c-4732-b2e0-755799154b1b' ] ]
];

$mappedArray = array_map(function($val) {
    return $val['Investment'];
}, $array);

将投资数组存储在临时变量中,未设置,如下所示

$tempArr = // 0 index of your array
foreach($tempArr as $key=>$val){
     if(!empty($val['Investment'])){
       $temp = $val['Investment'];
    unset($val['Investment']);
    $val[] = $temp;
}

}

您可以使用array_map()并为每个项目返回“投资”键的值。

$newArray = array_map(function($item) {
    return $item['Investment'];
}, $oldArray);

如果您不想复制该数组,则可以尝试使用array_walk()

编辑:使用array_walk()的解决方案

array_walk($oldArray, function(&$item) {
    $item = $item['Investment'];
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM