我有一个for循环,它返回一个id和用户拥有的所有图像的名称。
$from1 = 1;
$from2 = 10;
for ($i=$from1; $i < $from2; $i++) {
if (($i % 5) == 0)
$idTemp = $id1[$i];
echo $idTemp;
echo $name[$i];
}
我希望将它放入json响应中,而不是回显数据,如下所示:
"images":[
"1":{"id":"1234","name":"thisisaname"},
"2":{"id":"4332","name":"namename"}
]
但我似乎无法弄清楚如何在循环中创建json数组。另外,我将如何循环解码json?
有人可以帮忙吗? 提前为任何帮助干杯,杰米
答案 0 :(得分:4)
在服务器端(PHP)打印json响应,首先创建具有相同结构的php数组,然后用json_encode
对其进行编码:
$from1 = 1;
$from2 = 10;
$json = array('images' => array());
for ($i=$from1; $i < $from2; $i++) {
if (($i % 5) == 0) {
$json['images'][$i] = array(
'id' => $id1[$i],
'name' => $name[$i]
);
}
}
echo json_encode($json);
在客户端(JS),您将收到一个data
对象:
$.getJSON(url, function(data) {
for (x in data.images) {
data.images[x].id;
data.images[x].name;
}
}