2017-08-06 26 views
-1

下面的代碼返回的結果集的字段名。我也希望它返回值。我怎樣才能做到這一點?MySQL mysqli_fetch_assoc字段名稱和值。怎麼樣?

while ($row = mysqli_fetch_assoc($result)) { 
    foreach($row as $field => $name) { 
     echo $field."<br>"; 
    } 
} 
+3

'$ name'值保持在循環中的價值。如果你不使用foreach,使用'$行[「身份證」]',其中「ID」是列名。該手冊非常適合尋找這樣的東西! – Qirel

+2

檢查手冊通常更快的是發佈提問:http://php.net/manual/en/control-structures.foreach.php。把它作爲一個開始的習慣,否則你可能會被拒絕投票。 –

+0

我的歉意。然而,這是我在網上找到的這個解決方案的最簡單和最清晰的例子。希望它有助於未來的搜索。 – ASPiRE

回答

4

如果我們假設你的數組是這樣的:

$row["first_name"] = "John"; 
$row["last_name"] = "Doe"; 
$row["username"] = "john.doe"; 

使用此代碼:

while ($row = mysqli_fetch_assoc($result)) { 
    foreach($row as $field => $value) { 
     echo "{$field} - {$value}<br>"; 
    } 
} 

你會得到這樣的輸出:

first_name - John 
last_name - Doe 
username - john.doe 

當你迭代一個數組時,使用=>運營商,你迭代在「鍵值」對風格。每次迭代持有keyvalue,你可以看到。

看看foreach以獲取更多信息。

+0

@Vini很高興它適合您的需求。看看更新的答案,不要忘記投票作爲正確的答案:)。 – Spectarion

+0

只是爲了徹底,如何輸出這兩個值來分離變量?再次感謝一百萬。 – ASPiRE

+0

去寫'var_dump($ row);'你會看到它包含一個鍵列表(first_name,last_name,username),每個鍵都有它的值。我不太清楚它是如何在後臺完成的,但這並不難,因爲你可以得到鍵列表,然後說'給我鍵值first_name','給我鍵值last_name','給我關鍵用戶名的值,並且每個接收到的值都被重新分配給名爲$ value的變量。我沒有人物,但基本上就是這樣。 – Spectarion

0

您得到在$name可變

foreach($row as $field => $name) { 
       echo $field . " = " . $name . "<br>"; 
    }