php 将数组插入其他数组的特定位置


php insert array in other array in specific place?

我想在特定区域下的data array中插入detail array

例如,detail arraybdh键的值应该放在data arraybdh键中,替换开头的空数组。同样,detail arrayhadoop 键的值应替换data array中的hadoop键当前具有的空数组。应针对 details 数组中的每个键进行此替换。

我该如何实现此目的?

数据数组

{"data":
    {
        "categories":
        {
            "articles":
            {
                "bdh":[],
                "hadoop":[]
            },
            "videos":
            {
                "bdh Videos":[],
                "hadoop Videos":[]
            }   
        }
    }
}

详细信息数组

{"details":{
    "bdh":
        [
            {"id":1, "name":"bdh article 1", "body":"this is bdh article 1 body."},
            {"id":2, "name":"bdh article 2", "body":"this is bdh article 2 body."}
        ],
    "hadoop":
        [
            {"id":3, "name":"hadoop article 1", "body":"this is hadoop article 1 body."},
            {"id":4, "name":"hadoop article 2", "body":"this is hadoop article 2 body."}
        ],

    "bdh Videos":
        [
            {"id":5, "name":"bdh videos 1", "body":"this is bdh videos 1 body."},
            {"id":6, "name":"bdh videos 2", "body":"this is bdh videos 2 body."}
        ],
    "hadoop Videos":
        [
            {"id":7, "name":"hadoop videos 1", "body":"this is hadoop videos 1 body."},
            {"id":8, "name":"hadoop videos 2", "body":"this is hadoop videos 2 body."}
        ]
}
<?php
    $videos = '
        {"data":
            {
                "categories":
                {
                    "articles":
                    {
                        "bdh":[],
                        "hadoop":[]
                    },
                    "videos":
                    {
                        "bdhVideos":[],
                        "hadoopVideos":[]
                    }   
                }
            }
        }
    ';
    $details='
        {"details":{
            "bdh":
                [
                    {"id":1, "name":"bdh article 1", "body":"this is bdh article 1 body."},
                    {"id":2, "name":"bdh article 2", "body":"this is bdh article 2 body."}
                ],
            "hadoop":
                [
                    {"id":3, "name":"hadoop article 1", "body":"this is hadoop article 1 body."},
                    {"id":4, "name":"hadoop article 2", "body":"this is hadoop article 2 body."}
                ],

            "bdhVideos":
                [
                    {"id":5, "name":"bdh videos 1", "body":"this is bdh videos 1 body."},
                    {"id":6, "name":"bdh videos 2", "body":"this is bdh videos 2 body."}
                ],
            "hadoopVideos":
                [
                    {"id":7, "name":"hadoop videos 1", "body":"this is hadoop videos 1 body."},
                    {"id":8, "name":"hadoop videos 2", "body":"this is hadoop videos 2 body."}
                ]
            }
        }
    ';
    $arr_videos = json_decode($videos);
    $arr_details = json_decode($details);
    //bdh
    $arr_videos->data->categories->articles->bdh = $arr_details->details->bdh[0];
    //hadoop
    $arr_videos->data->categories->articles->hadoop = $arr_details->details->hadoop[0];
    //videos bdh
    $arr_videos->data->categories->videos->bdh = $arr_details->details->bdhVideos;
    //videos hadoop
    $arr_videos->data->categories->videos->hadoop = $arr_details->details->hadoopVideos;
    print_r($arr_videos);
?>