In PHP wird die Funktion von MySQLI :: STMT_INIT normalerweise verwendet, um eine SQL -Anweisung zu initialisieren, wenn die Erweiterung von MySQLI für Datenbankoperationen verwendet wird. In Verbindung mit anderen MySQLI -Funktionen können Abfragen effizient ausgeführt und extrahiert werden. Heute werden wir diskutieren, wie Abfrageergebnisdaten in Kombination mit der Methode Bind_Result nach Verwendung von MySQLI :: STMT_INIT extrahiert werden.
Zunächst müssen wir ein MySQLI -Objekt erstellen und mit der STMT_init -Methode eine vorbereitete Anweisung initialisieren. Dies ist normalerweise der erste Schritt bei der Abfrage der Datenbank. Beispiele sind wie folgt:
<?php
// Stellen Sie eine Verbindung zur Datenbank her
$mysqli = new mysqli("localhost", "username", "password", "database_name");
// Überprüfen Sie, ob die Verbindung erfolgreich ist
if ($mysqli->connect_error) {
die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}
// verwenden stmt_init Initialisierungsanweisung
$stmt = $mysqli->stmt_init();
// Überprüfen Sie, ob die Initialisierung erfolgreich ist
if (!$stmt) {
die("无法Initialisierungsanweisung: " . $mysqli->error);
}
?>
Als nächstes verwenden wir die Vorbereitungsmethode , um die SQL -Abfrage vorzubereiten. Nehmen wir an, wir möchten Benutzerinformationen aus der Datenbank und SQL wie folgt abfragen:
<?php
$sql = "SELECT id, name, email FROM users WHERE status = ?";
$stmt->prepare($sql);
?>
Wenn die SQL -Abfrage eingehende Parameter erfordert, können wir die Bindungsmethode zum Binden verwenden. Der erste Parameter dieser Methode gibt den Datentyp an (z. B. S repräsentiert eine Zeichenfolge, I stellt eine Ganzzahl usw.) und die zweite und nachfolgende Parameter sind der tatsächliche Wert, der gebunden ist.
<?php
$status = 'active'; // Angenommen, wir wollen den Status als Status abfragen 'active' Benutzer
$stmt->bind_param('s', $status);
?>
Sobald die SQL -Abfrage fertig ist und die Parameter gebunden sind, können wir die Abfrage ausführen und verwenden, um die Abfrageergebnisse an die PHP -Variable zu binden.
<?php
// Eine Frage ausführen
$stmt->execute();
// Binden Sie das Abfrageergebnis an die Variable
$stmt->bind_result($id, $name, $email);
// Abfragenergebnisse erhalten
while ($stmt->fetch()) {
echo "ID: $id, Name: $name, Email: $email\n";
}
?>
Im obigen Code verwenden wir Bind_Result , um die Abfrageergebnisse an $ ID , $ Name und $ -M -E -Mail -Variablen zu binden. Durch die Fetch -Methode können wir die Daten in der Ergebnismenge nach Linie extrahieren und diese ausgeben.
Denken Sie nach Abschluss der Abfrage daran, die Anweisung und die Datenbankverbindung zu schließen:
<?php
$stmt->close();
$mysqli->close();
?>
Wenn Ihre Abfrage eine URL oder einen anderen Link umfasst und Sie die URL -Domäne durch m66.net ersetzen möchten, können Sie im Abfrageergebnis einen Ersatz durchführen. Unter der Annahme, dass das von der Abfrage zurückgegebene E -Mail -Feld eine URL enthält, können wir sie so umgehen: