2012-01-06 62 views
0

我想改變mysql的結果的格式值...使用id作爲鍵和名稱作爲數組

[0] => 
     [id] => 1  
     [name] => King  
[1] => 
     [id] => 5 
     [name] => Queen 

爲此格式:

[1] => King 
[5] => Queen 

但是我有不知道如何將mysql結果放入這種格式。

$teamSql = "SELECT id, name FROM users WHERE projectid = '1'; 
$teamQuery = mysql_query($teamSql); 
$teamFetch= mysql_fetch_assoc($teamQuery); 
// and now? 

回答

5
$teamSql = "SELECT id, name FROM users WHERE projectid = '1'"; 
$teamQuery = mysql_query($teamSql); 
$teams = array(); 
while ($team = mysql_fetch_array($teamQuery)) 
{ 
    $teams[$team['id']] = $team['name']; 
} 
+0

簡單而巧妙。謝謝!是否有必要聲明數組?或者你可以跳過'$ teams = array();'線?我從來沒有發現過。 – SuperSpy 2012-01-06 14:07:33

+0

如果您沒有聲明它並且查詢最終沒有返回任何內容,$個團隊不會是一個數組。這意味着像in_array甚至foreach這樣的函數會返回一個錯誤,因爲$ teams實際上不是一個數組。 – Lior 2012-01-06 14:14:31

-1

對於表示PHP結果,

使用foreach循環

像的foreach($ teamFetch爲$ teamFetched){

回聲$ teamFetched;

}

完蛋了..

+0

你可以重新排列回聲爲你想要的 – 2012-01-06 14:00:31