如果我從MySQL數據庫獲取數據並使用while循環來遍歷數據,那麼我將如何將每個數據添加到數組?從while循環填充PHP數組
$result = mysql_query("SELECT * FROM `Departments`");
while($row = mysql_fetch_assoc($result))
{
}
如果我從MySQL數據庫獲取數據並使用while循環來遍歷數據,那麼我將如何將每個數據添加到數組?從while循環填充PHP數組
$result = mysql_query("SELECT * FROM `Departments`");
while($row = mysql_fetch_assoc($result))
{
}
在迭代while
循環時建立一個數組。
$result = mysql_query("SELECT * FROM `Departments`");
$results = array();
while($row = mysql_fetch_assoc($result))
{
$results[] = $row;
}
另外,如果你使用PDO,你可以do this automatically。
這將這樣的伎倆:
$rows = array();
$result = mysql_query("SELECT * FROM `Departments`");
while($row = mysql_fetch_assoc($result))
{
$rows[] = $row;
}
這一直是最快的方式爲我創造(多維)陣列之一。我不確定你是否希望你的所有結果都被吸入到一個數組中。
// 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);
您可以使用print_r($ array)來查看結果。
我最喜歡的是以下;
$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
}
你不需要彈出的最後一行,但它留下一個空白,如果你忽略它。 明顯對於mysql來說是一樣的。
如果你的Departments表中有多個列,並且你想保存在不同的數組中。
$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'];
}
你太快了! ;) – AlienWebguy
如何只將一列放在一個數組和索引od數組應該是主鍵? – 2013-10-08 10:58:18
@bhawin瞭解PHP數組如何工作,您會發現它很簡單 – alex