web-dev-qa-db-fra.com

Peupler PHP Tableau de While Loop

Si je récupère les données d'une base de données MySQL et utilise une boucle while pour parcourir les données, comment puis-je les ajouter à un tableau?

$result = mysql_query("SELECT * FROM `Departments`");
while($row = mysql_fetch_assoc($result))
{

}
19
JosephD

Construisez un tableau lorsque vous parcourez la boucle while.

$result = mysql_query("SELECT * FROM `Departments`");
$results = array();
while($row = mysql_fetch_assoc($result))
{
   $results[] = $row;
}

Alternativement, si vous utilisiez PDO , vous pourriez le faire automatiquement .

66
alex

Cela a été l’un des moyens les plus rapides pour créer des tableaux (multidimensionnels). Je ne sais pas si vous voulez que tous vos résultats soient intégrés dans un tableau ou non. 

// Read records
$query = "SELECT * FROM `Departments`"; 
$query = mysql_query($query);

// Put them in array
for($i = 0; $array[$i] = mysql_fetch_assoc($query); $i++) ;

// Delete last empty one
array_pop($array);

Vous pouvez utiliser print_r ($ array) pour voir les résultats.

6
Blake

Ça fera l'affaire:

$rows = array();
$result = mysql_query("SELECT * FROM `Departments`");
while($row = mysql_fetch_assoc($result))
{
  $rows[] = $row;
}
6
squinlan

Si vous avez plusieurs colonnes dans votre table Departments et que vous souhaitez enregistrer dans un tableau différent.

$result = mysql_query("SELECT * FROM `Departments`");
$dept_id = array();
$dept_name=array();
while($row = mysql_fetch_assoc($result))
{
//fetches and store all results in id column on your departments table
$dept_id= $row['id'];
//fetches and store all results in name column on your departments table    
$dept_name=$row['name'];
}
1
M.Nabeel

mon fav est le suivant;

$result=odbc_exec($conn,$sql);
if ($result) {
    while($found_results[] = odbc_fetch_array($result)) { } 
    array_pop($found_results); //pop off the empty line from while loading
}

vous n'avez pas besoin de faire apparaître la dernière ligne, mais elle laisse un blanc si vous l'omettez . fonctionne de la même manière pour mysql évidemment.

0
2114L3