我想提供一些特定尺寸的储物柜。我的SQL语句是:
$sql = "SELECT Concat(`Height`, 'x', `Width`, 'x', `Depth`) as Locker, count(*) from lockers GROUP BY `Height`, `Width`, `Depth` ";
行循环中的var_转储提供以下信息(可能还有更多行):
array(2) { ["Locker"]=> string(8) "15x30x45" ["count(*)"]=> int(6) }
array(2) { ["Locker"]=> string(8) "45x30x45" ["count(*)"]=> int(4) }
我想获得一个JSON字符串,如下所示:
{
"SizeList": {
"15x30x45": 6
"45x30x45": 4
}
}
我尝试了很多不同的方法(包括将其转换为对象,但无法获取大小作为索引的值)。例如,我得到不同的变化:
[0]=> string(31) "{"Locker":"15x30x45","count(*)":6}"
[1]=> string(31) "{"Locker":"45x30x45","count(*)":4}"
感谢任何帮助。。。
最佳答案
您可以手动创建如下对象:
$sizeList = new stdClass();
foreach ($results as $row) {
$sizeList->{$row['Locker']} = $row['count(*)'];
}
echo json_encode(array('SizeList' => $sizeList));