2017-08-06 21 views
-1

Der folgende Code gibt die Feldnamen einer Ergebnismenge zurück. Ich möchte auch, dass es die Werte zurückgibt. Wie kann ich das machen?MySQL mysqli_fetch_assoc Feldname & Wert. Wie?

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

'$ name' hält den Wert in der Schleife. Wenn Sie keine Foreach verwenden, verwenden Sie '$ row ['id']', wobei "id" der Name der Spalte ist. Das Handbuch ist großartig, um solche Sachen zu finden! – Qirel

+2

Das Überprüfen des Handbuchs ist in der Regel schneller als das Posten einer Frage: http://php.net/manual/en/control-structures.foreach.php. Machen Sie es sich zur Gewohnheit, damit zu beginnen, oder Sie riskieren, unten gewählt zu werden. –

+0

Entschuldigung. Dies ist jedoch das einfachste und sauberste Beispiel für diese Lösung, die ich online gefunden habe. Hoffentlich hilft es zukünftigen Suchen. – ASPiRE

Antwort

4

Wenn wir davon ausgehen, dass Ihr Array wie folgt aussieht:

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

Mit diesem Code:

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

erhalten Sie eine Ausgabe wie folgt erhalten:

first_name - John 
last_name - Doe 
username - john.doe 

Wenn Sie ein Array durchlaufen, verwenden Sie => Operator, Sie sind in einem "Schlüssel-Wert" -Paar Stil iterieren. Jede Iteration enthält die key und value, wie Sie sehen können.

Weitere Informationen finden Sie unter foreach.

+0

@Vini Froh, dass es Ihren Bedürfnissen entspricht. Sehen Sie sich die aktualisierte Antwort an und vergessen Sie nicht, als richtige Antwort zu wählen :). – Spectarion

+0

Nur zur Gründlichkeit, wie gibt man beide Werte aus, um Variablen zu trennen? Nochmals eine Million. – ASPiRE

+0

Gehen Sie und schreiben Sie 'var_dump ($ row);' und Sie werden sehen, dass es eine Liste von Schlüsseln (Vorname, Nachname, Benutzername) enthält und jeder Schlüssel hat seinen Wert. Ich bin nicht ganz sicher, wie es im Hintergrund gemacht wird, aber es ist nicht so schwierig, weil Sie die Liste der Schlüssel erhalten könnten, und dann sagen Sie etwas wie 'gib mir Wert für Schlüssel first_name',' gib mir Wert für Schlüssel last_name', ' geben Sie mir einen Wert für den Schlüssel username' und jeder empfangene Wert wird (wieder) der Variablen '$ value' zugewiesen. Ich habe keine Charaktere, aber das ist es im Grunde genommen. – Spectarion

0

Sie bekommen den Wert in $name Variable

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