每个循环的PHP只返回最后一个元素

时间:2017-06-08 12:41:32

标签: php loops pdo

我试图循环遍历一个列表,但是每个列表只返回最后一个元素。这是我的代码..

$query = $pdo->prepare("SELECT price  FROM prices WHERE cake_id = ? ");
$query->execute(array($cakeId));
$prices =  $query3->fetchAll(\PDO::FETCH_ASSOC);
foreach ($prices as $key => $value) {
     echo json_encode($value);

}

获取查询输出

 `[{"price":"500"},{"price":"950"},{"price":"1450"}]`

我的价格表包含3列id,price and cake_id

请帮我解决这个问题

1 个答案:

答案 0 :(得分:1)

如果要获取所有行,请将查询更改为

$query = $pdo->prepare("SELECT * FROM prices WHERE cake_id = ? ");

获取单个json中的所有值

foreach ($prices as $key => $value) {
     $newarray[] = $value;

}

print_r(json_encode($newarray));