2015-06-21 201 views
0

我想在while循環外顯示字符串,但它只顯示一個結果。while循環只顯示一個結果

while($row = $result->fetch_assoc()) { 
    $myarr = array(); 
} 
echo $myarr; 

這隻顯示一個結果,但我需要while循環之外的所有結果。 你能幫我解決這個問題嗎?

回答

1

問題:

後再次

$myarr = array(); 

這裏你只是分配結果之一,這意味着你一次又一次地分配array(),它取代了舊的價值

解決方法/你應該做什麼

1.您可以將其分配到一個Array(好辦法)

while($row = $result->fetch_assoc()) { 
    $myarr[] = $row['yourdbitem']; // or $row if you want whole row 
} 
print_r($myarr); 

2.您可以在每次迭代中CONCAT(不錯的辦法)

$somevariable = ''; 
while($row = $result->fetch_assoc()) { 
$somevariable .= $row['yourdbitem']; // or $row if you want whole row 
} 
echo $somevariable 

注:

我已經給出了好的和壞的方法來更新你應該做什麼,你不應該做什麼:)

2

我不確定您是否希望查詢返回的整行或只是一個字段。

如果它的全排,然後嘗試

$myarr = array(); // initialize 
while($row = $result->fetch_assoc()) { 
    $myarr[] = $row; 
} 
print_r($myarr); 

這會給你一個包含n行數組的數組。