3 回答
TA贡献1817条经验 获得超14个赞
您可以像这样在json_encode之前在数组中添加成本:
// ......
while ($r = $q->fetch()) {
$myJson->$r['id']= [
'title' => $r['title'],
'cost' => $r['cost'],
//.....
];
}
// .....
TA贡献1900条经验 获得超5个赞
您最好将整个行($r)添加到数组中,而不仅仅是标题。您还应该$myJson首先初始化数组()...
$sql = 'SELECT id,title,cost,cat
FROM prodcts_df';
$q = $db->query($sql);
$q->setFetchMode(PDO::FETCH_ASSOC);
// Initialise array
$myJson = []
while ($r = $q->fetch()) {
// Add the row to the array indexed by the ID
$myJson[$r['id']]= $r;
}
echo json_encode($myJson);
请注意,我使用$myJson[$r['id']]而不是$myJson->$r['id']添加它,在索引这样的数据列表时更常见。
如果您只想要阵列的一部分...
$myJson[$r['id']]= [ 'title' => $r['title'], 'cost' => $r['cost']];
TA贡献1796条经验 获得超4个赞
json_encode($myJson);
会将您的对象编码为JSON。如果将其他数据添加到$ myJson变量中,它将在输出中包括这些数据:
$myJson['foo'] = 'bar';
- 3 回答
- 0 关注
- 134 浏览
添加回答
举报