首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将多维数组合并为单个数组

如何将多维数组合并为单个数组
EN

Stack Overflow用户
提问于 2013-01-08 16:29:52
回答 2查看 87关注 0票数 0

我有一个数组POST,看起来像这样

代码语言:javascript
复制
Array
(
[ponumber] => 111111
[man_part_number] => Array
    (
        [0] => 11C2555
        [1] => 11C2555
        [2] => 11C2555
        [3] => 11C2555
    )

[model] => Array
    (
        [0] => FORMS PRINTER 2500 SERIES
        [1] => FORMS PRINTER 2500 SERIES
        [2] => FORMS PRINTER 2500 SERIES
        [3] => FORMS PRINTER 2500 SERIES
    )

[damaged] => Array
    (
        [0] => 0
        [1] => 0
        [2] => 0
        [3] => 0
    )

[serial_number] => Array
    (
        [0] => CNCQ202070
        [1] => CNCQ210800
        [2] => MY5203B1KQ
        [3] => CN1863Q0PQ
    )

[skid] => Array
    (
        [0] => 1
        [1] => 2
        [2] => 3
        [3] => 4
    )

[submit] => Attach this serial number list to PO#111111
)

我需要将数组合并到

代码语言:javascript
复制
Array
(
[man_part_number] => Array
    (
        [0] = > 11C2555
    )
[model] => Array
    (
        [0] => FORMS PRINTER 2500 SERIES
    )
[damaged] => Array
    (
        [0] => 0
    )
[serial_number] => Array
    (
        [0] => CNCQ202070
    )
[skid] => Array
    (
        [0] => 1
    )
[ponumber] => Array
    (
        [0] => 111111
    }
}

依此类推,因此所有的数组也是1、2和3的组合,但每个数组都需要加上ponumber,并且对所有4个数组都是相同的。

EN

回答 2

Stack Overflow用户

发布于 2013-01-08 16:59:31

代码语言:javascript
复制
$array = array_map('current', $array[0]);
票数 0
EN

Stack Overflow用户

发布于 2013-01-08 17:21:17

您可以使用MultipleIterator

代码语言:javascript
复制
$mi = new MultipleIterator(MultipleIterator::MIT_NEED_ALL|MultipleIterator::MIT_KEYS_ASSOC);
$mi->attachIterator(new ArrayIterator($data['man_part_number']),"man_part_number");
$mi->attachIterator(new ArrayIterator($data['model']),"model");
$mi->attachIterator(new ArrayIterator($data['damaged']),"damaged");
$mi->attachIterator(new ArrayIterator($data['serial_number']),"serial_number");
$mi->attachIterator(new ArrayIterator($data['skid']),"skid");

echo "<pre>";
foreach ($mi as $member) {
    print_r($member);
}

Output

代码语言:javascript
复制
Array
(
    [man_part_number] => 11C2555
    [model] => FORMS PRINTER 2500 SERIES
    [damaged] => 0
    [serial_number] => CNCQ202070
    [skid] => 1
)
Array
(
    [man_part_number] => 11C2555
    [model] => FORMS PRINTER 2500 SERIES
    [damaged] => 0
    [serial_number] => CNCQ210800
    [skid] => 2
)
Array
(
    [man_part_number] => 11C2555
    [model] => FORMS PRINTER 2500 SERIES
    [damaged] => 0
    [serial_number] => MY5203B1KQ
    [skid] => 3
)
Array
(
    [man_part_number] => 11C2555
    [model] => FORMS PRINTER 2500 SERIES
    [damaged] => 0
    [serial_number] => CN1863Q0PQ
    [skid] => 4
)

See Live Demo

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14210996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档