我正在使用json_encode从foreach创建一个数组,我想放在一个静态数组中。我已将json_encoded数组加载到变量中。如果我回显变量,数据看起来很棒。只是当我将变量输入数组时,它就无法工作。
这是我的预告。
$arr = array();
foreach ($response->records as $record) {
$r['id'] = $record->Id;
$r['title'] = $record->Title;
$r['pin'] = $record->Pin;
$arr[] = $r;
}
$locations = json_encode($arr);
这是我的静态数组,我输入了$ locations变量。
$data = array(
'name' => Locations,
'data' => '{
"title":"USA",
"location":"World",
"levels":[
{
"id":"states",
"title":"States",
"locations":'$locations'
}
]
}'
);
这就是我所看到的错误。
Parse error: syntax error, unexpected '$locations' (T_VARIABLE), expecting ')'
感谢您的帮助,谢谢。
答案 0 :(得分:0)
您正在寻找的Gizmo是concatenation operator,看起来像这样
.
它将字符串粘在一起。
$data = array(
'name' => Locations,
'data' => '{
"title":"USA",
"location":"World",
"levels":[
{
"id":"states",
"title":"States",
"locations":' . $locations . '
}
]
}'
);
答案 1 :(得分:0)
如果ı真的理解你的想法,请将$ locations变量编码为JsonString
json_encode($locations)
在添加$ data ['data'] elm。
之前$data = array(
'name' => Locations,
'data' => '{
"title":"USA",
"location":"World",
"levels":[
{
"id":"states",
"title":"States",
"locations":' . json_encode($locations) . '
}
]
}'
);