使用 php 在每个索引之后在数组中插入值

Insert value in array after every index using php

我从数据库中获取值并以 json 格式返回其数组。这是我获取值的代码。第一个阵列工作正常。但是我需要在数组中的每个索引之后添加静态数组。这是我的代码

$value = $this->TestModel->get_user_details($userIds);

此函数 returns json 格式的数组,例如

[
        {
            "user_id": "1",
            "name": "test 1",
            
        },
        {
            "user_id": "2",
            "name": "test 2",
        },
        {
            "user_id": "3",
            "name": "test 3",
        },
     ]
 

现在我需要在静态 json 数组下方添加数组的每一项。这是例如

 $test1= array("student_list"=> array(array("stu_id"=>1, "name"=> "abc") , array("stu_id"=>2, "name"=> "xyz")),
           "class"=> "12th",
           "average_score"=>"5",
        "results"=>array(array("result_date"=>"2012-12-13","city"=>"city 1"),array("result_date"=>"2015-10-13","city"=>"city 2")));

我已经用 array_push 和 array_merge 试过了,但它在数组的末尾添加了这个。

我需要这个回应

[
        {
            "user_id": "1",
            "name": "test 1",
            "student_list": [
                {
                    "stu_id": 1,
                    "name": "abc",
                   
                },
                {
                    "stu_id": 2,
                    "name": "xyz",
                   
                }
            ],
            "class": "12th",
            "average_score": "5",
            "results": [
                {
                    "result_date": "2012-12-13",
                    "city": "City 1",
                   
                   
                },
                {
                    
                    "result_date": "2012-10-13",
                    "city": "City 2",
                }
            ]
        },
        {
            "user_id": "2",
            "name": "test 2",
            "student_list": [
                {
                    "stu_id": 3,
                    "name": "asd",
                   
                },
                {
                    "stu_id": 4,
                    "name": "ghj",
                   
                }
            ],
            "class": "10th",
            "average_score": "5",
            "results": [
                {
                    "result_date": "2011-12-13",
                    "city": "City 3",
                   
                   
                },
                {
                    
                    "result_date": "2011-10-13",
                    "city": "City 4",
                }
            ]
        },
    ]

如果要将 $test1 添加到数组中的每个元素,则应合并每个元素,如下所示:

$value = $this->TestModel->get_user_details($userIds);

$test1 = array(
    "student_list" => array(array("stu_id" => 1, "name" => "abc"), array("stu_id" => 2, "name" => "xyz")),
    "class" => "12th",
    "average_score" => "5",
    "results" => array(array("result_date" => "2012-12-13", "city" => "city 1"), array("result_date" => "2015-10-13", "city" => "city 2"))
);

$decoded = json_decode($value, true);
for ($i = 0; $i < count($decoded); $i++) {
    $decoded[$i] = array_merge($decoded[$i], $test1);
}

$value = json_encode($decoded);