简体   繁体   English

使用相同的键将2个阵列合并为一个阵列

[英]Merge 2 arrays into one array with same keys

I want to merge the filename into same key.Below are the two arrays, i tried to use array_merge but it is not merging into same keys 我想将文件名合并到相同的键中。下面是两个数组,我尝试使用array_merge但它没有合并到相同的键中

Array
(
    [0] => Array
        (
            [episode_id] => 2
            [episode_number] => 1
            [series] => 2012
        )

    [1] => Array
        (
            [episode_id] => 2
            [episode_number] => 2
            [series] => 2013
        )

)
Array
(
    [0] => Array
        (
            [filename] => Enq9nNGnMFY
        )

    [1] => Array
        (
            [filename] => Enq9nsdfdsNGnMFY
        )

)

The expected output should be 预期输出应为

Array
(
    [0] => Array
        (
            [episode_id] => 2
            [episode_number] => 1
            [series] => 2012
            [filename] => Enq9nNGnMFY
        )

    [1] => Array
        (
            [episode_id] => 2
            [episode_number] => 2
            [series] => 2013
            [filename] => Enq9nsdfdsNGnMFY
        )

)

Can anyone help with this !!!!!!!!!! 有人能帮忙吗 !!!!!!!!!!

foreach ($first_array as $key => $item){
$second_array[$key] = array_merge($second_array[$key],$item);
}

Second array will include what you wanted. 第二个数组将包含您想要的内容。

Try this: 尝试这个:

foreach($array_1 as $key => $value){
    foreach($array_2[$key] as $key2 => $value2){
        array_push($array_1[$key], $value2);
    }
}

$array_1 should then be you're combined array, even if you have more than just filename. $ array_1应该是组合数组,即使您不只是文件名。

Try this: 尝试这个:

<?php
        $array_1 = Array
            (Array('episode_id' => 2, 'episode_number' => 1, 'series' => 2012),
            Array('episode_id' => 2, 'episode_number' => 2, 'series' => 2013)
        );

        $array_2 = Array(Array('filename' => 'Enq9nNGnMFY'), Array('filename' => 'Enq9nsdfdsNGnMFY'));

        foreach ($array_1 as $key => $value) {
            foreach ($array_2[$key] as $key2 => $value2) {
                $array_1[$key][$key2] = $value2;
            }
        }



        echo '<pre>';
        print_r($array_1);
        ?>

First array is result what you want 第一个数组是您想要的结果

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

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