重组数组

时间:2015-12-02 20:57:20

标签: php arrays

我在PHP中有这个数组

$fields = array(
    0 => array(
        'field1' => 'something1',
        'field2' => 'something2'
   )
)

我需要它看起来像这样

$fields = array(
   'fields1' => 'something1',
   'fields2' => 'something2'
)

我可以使用哪些函数代码来删除示例中的0索引?

5 个答案:

答案 0 :(得分:0)

你可以像这样循环......

创建新数组

$newArray = [];

然后循环

foreach($fields as $field){

    if(is_array($field)){        
       foreach($field as $key => $value){
           $newArray[$key] = $value;
       }
    }

} 

答案 1 :(得分:0)

创建一个数组,遍历$ fields,并将所有项目与创建的数组合并。

$final_array = array();

foreach ($fields as $field)
{
    $final_array = array_merge($final_array, $field);
}

$fields = $final_array;

这将能够处理数组任一级别中的任意数量的项目,并将它们压缩成一级数组。

答案 2 :(得分:0)

从字段中取出'0'元素:

$fields=$fields[0];

答案 3 :(得分:0)

简单

      $fields = reset($fields);

或者

       $fields = array_shift($fields);

答案 4 :(得分:0)

arr = [{acnt: "001"},{acnt: "001"},{acnt: "002"},{acnt: "002"},{acnt: "003"}]
arr.group_by{ |g| g[:acnt]}.map{ |k, v| {k => v.count} }

使用它可以获得任何额外的等级。 威尔会给你你想要的东西