Heim  >  Artikel  >  Backend-Entwicklung  >  PHP wandelt Abfrageergebnisse in ein zweidimensionales Array um

PHP wandelt Abfrageergebnisse in ein zweidimensionales Array um

WBOY
WBOYOriginal
2023-05-05 20:23:07487Durchsuche

php ist eine beliebte Programmiersprache, die häufig zur Entwicklung von Webanwendungen verwendet wird. Das Abfragen der Datenbank ist eine der am häufigsten verwendeten Operationen in PHP, und die Abfrageergebnisse müssen in Form eines Arrays zurückgegeben werden. In diesem Artikel wird beschrieben, wie Abfrageergebnisse in ein zweidimensionales Array konvertiert werden.

1. Abfrageergebnisse

Verwenden Sie in PHP MySQLi oder PDO, um eine Verbindung zur Datenbank für Abfragevorgänge herzustellen. Das Folgende ist ein Beispielcode für die Verwendung einer MySQL-Abfrage:

$mysqli = new mysqli("localhost", "user", "password", "database");
$sql = "SELECT name, age FROM users";
$result = $mysqli->query($sql);

Beispielcode für die Verwendung von PDO:

$pdo = new PDO("mysql:host=localhost;dbname=database", "user", "password");
$sql = "SELECT name, age FROM users";
$result = $pdo->query($sql);

Ob es sich um MySQL oder PDO handelt, nach der Ausführung der Abfrageanweisung ein Ergebnismengenobjekt wird zurückgegeben.

2. Konvertieren Sie die Ergebnisse in ein Array

Es gibt zwei Möglichkeiten, die Abfrageergebnisse in ein Array zu konvertieren. Eine besteht darin, die mit mysqli oder PDO gelieferte Fetch-Funktion zu verwenden Die andere besteht darin, die gesamte Ergebnismenge auf einmal in ein Array zu übertragen.

  1. fetch()-Methode

Die fetch-Methode wird verwendet, um eine Datenzeile aus der Ergebnismenge zu entnehmen und den Zeiger um eine Zeile nach unten zu bewegen Reihe. Die Methode fetch() kann in einer Schleife aufgerufen werden, um die gesamte Ergebnismenge abzurufen. Das Folgende ist ein Beispielcode:

// mysqli示例代码
$rows = array();
while ($row = $result->fetch_assoc()) {
    $rows[] = $row;
}

// PDO示例代码
$rows = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    $rows[] = $row;
}

Der obige Code verwendet fetch_assoc() oder FETCH_ASSOC, um ein assoziatives Array abzurufen. Sie können auch fetch_array() oder FETCH_BOTH verwenden, um ein Array mit Zahlen und zugehörigen Schlüsseln abzurufen. fetch_object() oder FETCH_OBJ. Rückgabeobjekt.

  1. fetch_all()-Methode

fetch_all()-Methode dient dazu, die gesamte Ergebnismenge auf einmal in das Array abzurufen. fetch_all() ist eine Funktion in PDO. In mysqli müssen Sie get_result() verwenden, um das Ergebnismengenobjekt abzurufen. Das Folgende ist ein Beispielcode:

// mysqli示例代码
$rows = $result->get_result()->fetch_all(MYSQLI_ASSOC);

// PDO示例代码
$rows = $result->fetch_all(PDO::FETCH_ASSOC);

Der obige Code nimmt die Ergebnismenge auf einmal heraus und speichert alle Daten in der Ergebnismenge in einem zweidimensionalen Array in Form eines assoziativen Arrays.

3. Zusammenfassung

Die Verwendung der fetch()-Methode kann die Ergebnisse zeilenweise verarbeiten, was flexibler ist. erfordert aber viel Code. Die Methode fetch_all() kann das gesamte Ergebnis auf einmal abrufen. Der Code ist einfach, aber wenn die Datenmenge zu groß ist, belegt er möglicherweise zu viel Speicher.

In der tatsächlichen Entwicklung können Sie entsprechend der tatsächlichen Situation eine geeignete Methode auswählen. Wenn die Abfrageergebnismenge klein ist, können Sie die Methode fetch() verwenden. Andernfalls wird empfohlen, die Methode fetch_all() zu verwenden.

Das obige ist der detaillierte Inhalt vonPHP wandelt Abfrageergebnisse in ein zweidimensionales Array um. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn