在foreach PHP中只能获取一项


Can only get One item in foreach PHP

即使我有多个项目要循环,我的foreach上也只得到一个项目。这是我的代码:

$sql = "Select vID from info";
$stmt = $db->query($sql);  
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
$dataArray = array();
foreach($users as $user){
 $item =  $user['vID']
 $dataArray['ids'] = $item
}
echo json_encode($dataArray);

这是从数据库中提取的数据:

[
  {
    "vidID": "1234"
  },
  {
    "vidID": "5678"
  }
]

当我试图回显我创建的数组时,只有一个项目返回:

{
  "vids": "5678"
}

这是因为您要覆盖数组中的id,而不是追加。

如果要将其附加到阵列,请替换

$dataArray['ids'] = $item;

$dataArray[] = $item;

array_push($dataArray, $item);