2016-05-17 12 views
1

Ich bekomme nur einen Artikel auf meiner foreach sogar ich habe mehr als einen Artikel zu loopen. Dies ist mein Codes:Kann nur einen Artikel in foreach bekommen PHP

$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); 

Das ist die Daten aus der Datenbank holen:

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

Und als ich versuchte, meinen erstellen Array Echo, nur ein Element Rückkehr:

{ 
    "vids": "5678" 
} 
+1

Sie den Wert in der foreach-Schleife überschreiben. –

+0

Dank @Dagon für mich wissen zu lassen ... – Amboom

Antwort

3

Das liegt daran, dass Sie die ID im Array überschreiben, anstatt anzuhängen.

Wenn Sie es an das Array angehängt werden soll, ersetzen

$dataArray['ids'] = $item; 

Mit

$dataArray[] = $item; 

Oder

array_push($dataArray, $item); 
+0

danke @ChinLeung – Amboom