2015-12-10 73 views
0

我有一個SQL查詢,並使用檢索結果;如何將整個mysql_fetch_array結果存儲到數組中? PHP

$result = mysql_query($query); 

而結果打印使用;我想將整個$row['column']存儲到數組中。爲此,上面的代碼可以替換爲;

$my_array[] = ""; 
while($row = mysql_fetch_array($result)){ 
    echo $row['column']."<br>"; 
    $my_array[] = $row['column']; 
} 

但是這裏執行while循環。有沒有其他有效/更好的方法,避免循環?

+0

爲什麼你不只是只讀所需的列,你有它在數組中?您只需在查詢中選擇所需的列。 – itsols

+0

爲什麼-1?我的問題不是很清楚嗎? –

+0

@itsols與選擇查詢有關的這個問題?好吧,我不這麼認爲 –

回答

2

將您的期望值存儲在第一個循環中的數組中。

while($row = mysql_fetch_array($result)){ 
    echo $row['column']."<br>"; 
    $my_array[] = $row['column']; 
} 

現在你不需要2個循環。 $my_array是提供給你隨時隨地使用你喜歡

但在這裏,而循環再次

執行不,絕對不正確。這可以通過1次循環調用來完成,循環不會再次執行。

但是這裏執行while循環。有沒有其他有效/更好的方法,避免循環?

都能跟得上有沒有使用mysql_*不過是使用mysqlipdo你可以只用一個電話,沒有任何環路獲取數組中的所有行。

我如何能做到用mysqli_ * U可以包括在你的答案

$link = mysqli_connect("localhost", "user", "password", "database"); 
$query = "SELECT column FROM yourTable"; 
$result = mysqli_query($link,$query); 
$my_array = mysqli_fetch_all($result,MYSQLI_ASSOC); 
+0

不應該包含元素號來保存'$ my_array'中的值嗎? – itsols

+0

不,我只有一個循環,我只是避免了回聲部分。 –

+0

那麼如果你已經只有1個循環,那麼問題是什麼? –

相關問題