问题在这里:我正在尝试编写一个可以构成动态PHP数组的代码。我有一个空数组,需要在其中添加键及其值,这些值由MySQL服务器的do-while循环传递。以下php代码:
$result=mysqli_query($link,"SELECT products_id,voted,rating FROM table_products $sorting LIMIT 6");
if(mysqli_num_rows($result)>0) {
$a = array();
do {
$row = mysqli_fetch_array($result);
$obj=$row['products_id'];
$rating=$row['rating'];
$voted=$row['voted'];
array_push($a,array('obj'.$obj => array('rating' =>
$rating, 'voted' => $voted)));
} while ($row = mysqli_fetch_array($result)
);}
$json = json_encode($a);
echo $json;
...给我这个json字符串:
[{"obj1":{"rating":"25","voted":"5"}},{"obj3":{"rating":"36","voted":"10"}},{"obj5":{"rating":"6","voted":"4"}}]
...但是我需要这个:
["obj1":{"rating":"25","voted":"5"},"obj3":{"rating":"36","voted":"10"},"obj5":{"rating":"6","voted":"4"}]
那么我该如何推动呢?
'obj'.$obj => array('rating' => $rating, 'voted' => $voted)
是否没有像我在代码中那样将其放置在单独的数组中?我只是不知道实现此目标的正确方法。
改变
array_push($a,array('obj'.$obj => array('rating' => $rating, 'voted' => $voted)));
到
$a['obj'.$obj] = array('rating' => $rating, 'voted' => $voted);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句