Beispiel für die Verwendung von bind_result vs. get_result

Die Methode mysqli_stmt::bind_result() bindet Variablen an eine vorbereitete Anweisung zur Speicherung des Ergebnisses. Die Variablen müssen als Referenz übergeben werden. Hier ist ein Beispiel, wie man bind_result() verwendet:

<?php

$stmt = $mysqli->prepare("SELECT name, age FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();
$stmt->bind_result($name, $age);
$stmt->fetch();
echo "Name: $name, Alter: $age";
$stmt->close();

Die Methode mysqli_stmt::get_result() wird verwendet, um das Ergebnis aus einer vorbereiteten Anweisung abzurufen. Das Ergebnis wird als mysqli_result-Objekt zurückgegeben. Hier ist ein Beispiel, wie man get_result() verwendet:

<?php

$stmt = $mysqli->prepare("SELECT name, age FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
  echo "Name: " . $row['name'] . ", Age: " . $row['age'] . "<br>";
}
$stmt->close();

Beachten Sie, dass get_result() nur mit dem mysqlnd-Treiber verfügbar ist. Wenn Ihre PHP-Installation die Bibliothek libmysqlclient verwendet, können Sie stattdessen die Funktion mysqli_stmt_get_result() verwenden.