Heim >Datenbank >MySQL-Tutorial >Wie kodiere ich MySQL-Abfrageergebnisse effizient als JSON in PHP?
Abfrageausführung und -abruf
Zum Abrufen von Daten aus einer MySQL-Datenbank und deren Speicherung eine PHP-Variable, die Sie verwenden können mysqli_query():
$sth = mysqli_query($conn, "SELECT ...");
JSON-Kodierung der Ergebnisse
Um die Abfrageergebnisse im JSON-Format zu kodieren, können Sie die Funktion json_encode() verwenden. Sie müssen jedoch die Ergebnisse durchlaufen und jede Zeile einzeln codieren:
$rows = array(); while($r = mysqli_fetch_assoc($sth)) { $rows[] = $r; } print json_encode($rows);
Anforderungen für die JSON-Codierung
Beachten Sie, dass json_encode() PHP Version 5.2 oder erfordert höher und das Paket „php-json“. Wenn es nicht installiert ist, versucht PHP, es automatisch einzubinden.
Alternativer Ansatz mit mysqli_fetch_all()
In modernen PHP-Versionen können Sie die Funktion mysqli_fetch_all() verwenden, um Alle Abfrageergebnisse in einem Array auf einmal abrufen:
$result = mysqli_query($conn, "SELECT ..."); $rows = mysqli_fetch_all($result); // list arrays with values only in rows // or $rows = mysqli_fetch_all($result, MYSQLI_ASSOC); // assoc arrays in rows print json_encode($rows);
Verwendet mysqli_fetch_all() für die JSON-Kodierung
Die Funktion mysqli_fetch_all() kann den JSON-Kodierungsprozess vereinfachen, indem sie das Zeilenarray für Sie erstellt. Übergeben Sie einfach die Ergebnisvariable an json_encode() und die Daten werden automatisch in das JSON-Format konvertiert.
Das obige ist der detaillierte Inhalt vonWie kodiere ich MySQL-Abfrageergebnisse effizient als JSON in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!