foreach 在静态数组中

foreach inside static array

如何用 foreach 循环替换此处的位置?当我将 foreach 放入数组时,代码中断。我猜想答案与创建一个 foreach 变量然后输入该变量作为级别值有关吗?

这是我的数组

$data = array(
'name' => Locations,
'data' => '{
    "title":"USA",
    "location":"World",
    "levels":[
        {
            "id":"states",
            "title":"States",
            "locations":[
                {
                    "id":"ca",
                    "title":"California",
                    "pin":"hidden",
                    "x":"0.0718",
                    "y":"0.4546",
                },
                {
                    "id":"wa",
                    "title":"Washington",
                    "pin":"hidden",
                    "x":"0.1331",
                    "y":"0.0971"
                }
            ]
        }
    ]
}'

这是我当前的 foreach。

foreach ($response->records as $record) {
    $id = $record->Id;
    $title = $record->Title;
    $pin = $record->Pin;
    $x = $record->X;
    $y = $record->Y;

    echo {
        "id": $id,
        "title": $title,
        "pin": $pin,
        "x": $x,
        "y": $y
    }
}

如有任何帮助,我们将不胜感激。

$arr = array();
foreach ($response->records as $record) {
    $r['id'] = $record->Id;
    $r['title'] = $record->Title;
    $r['pin'] = $record->Pin;
    $r['x'] = $record->X;
    $r['y'] = $record->Y;

    $arr[] = $r;
}

echo json_encode($arr);