2011-06-04 136 views
5

我想從MySQL查詢結果創建一個關聯數組。我想拉兩列,一列包含名字,另一列包含數字。我打算創建是一樣的東西:從MySQL查詢結果創建一個關聯數組 - PHP

$array = array('maggie'=> 68, 'Joseph' => 21, 'ireen'=> 64); 

$dbc = mysqli_connect('localhost', 'root', 'password', 'newbie'); 
$query = "SELECT fname, eng_end FROM members_records"; 
$result = mysqli_query($dbc, $query); 
while ($array = mysqli_fetch_assoc($result)) { 
$data_array[] = $array[]; 
} 

我無法建造的東西,可以創建從名字列從數列值的鍵和數據數據的數組大括號之間合理的。花括號內的每一個努力都會得到豐厚的PHP解析錯誤的回報。

我會從那裏出發,還是我的基金會太錯誤,導致什麼?如何實現我的目標(儘可能使用最少的代碼)?

+0

不應該是'$ data_array [] = $ array;'?另外:'$ data_array'沒有定義。 – jisaacstone 2011-06-04 01:26:17

回答

0

關聯數組創建這樣的:

$a = array('foo' => 'bar', 'color' => 'green'); 

可以將其創建這樣的後添加密鑰:

$a['someotherkey'] = 'value'; 
22

你可能想是這樣的:

$dbc = mysqli_connect('localhost', 'root', 'password', 'newbie'); 
$query = "SELECT fname, eng_end FROM members_records"; 
$result = mysqli_query($dbc, $query); 
$data_array = array(); 
while ($row = mysqli_fetch_assoc($result)) { 
    $data_array[$row['name']] = $row['value']; 
} 

用你的實際列名替換'name'和'value'。

+0

感謝@dkamins,我添加了正確的數據庫憑證並對列行進行了替換,它的工作方式就像一個魅力! – Bululu 2011-06-04 02:30:40

+0

@Bululu你打算「不接受」這個答案嗎? – dkamins 2011-10-16 22:28:40