Heim >Datenbank >MySQL-Tutorial >Wie rufe ich alle Ergebnisse einer MySQLi LIKE-Abfrage ab?

Wie rufe ich alle Ergebnisse einer MySQLi LIKE-Abfrage ab?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-20 06:02:09637Durchsuche

How to Fetch All Results from a MySQLi LIKE Query?

Mehrere Datensätze aus MySQLi-LIKE-Abfragen abrufen

Die LIKE-Abfragen von MySQLi können mehrere Ergebnisse liefern. Die Standardmethode fetch() ruft jedoch nur die erste Zeile ab. In dieser Anleitung werden verschiedene Möglichkeiten zum Abrufen aller übereinstimmenden Datensätze beschrieben.

Methode 1: get_result() und fetch_all()

Dies ist die bevorzugte Methode. get_result() ruft die gesamte Ergebnismenge ab und fetch_all() wandelt sie effizient in ein assoziatives Array um:

<code class="language-php">$param = "%{$_POST['user']}%";
$stmt = $db->prepare("SELECT id, username FROM users WHERE username LIKE ?");
$stmt->bind_param("s", $param);
$stmt->execute();
$result = $stmt->get_result();
$data = $result->fetch_all(MYSQLI_ASSOC);</code>

Methode 2: Vorbereitete Anweisungen mit fetch() und Looping

Dieser Ansatz verwendet vorbereitete Anweisungen mit bind_result() und iteriert mit fetch(), bis keine Zeilen mehr verfügbar sind:

<code class="language-php">$param = "%{$_POST['user']}%";
$stmt = $db->prepare("SELECT id, username FROM users WHERE username LIKE ?");
$stmt->bind_param("s", $param);
$stmt->execute();

$stmt->bind_result($id, $username);
while ($stmt->fetch()) {
  // Process each row ($id, $username)
}</code>

Methode 3: execute_query() (PHP 8.2 und höher)

Für PHP 8.2 und höher bietet execute_query() eine prägnante Alternative:

<code class="language-php">$sql = "SELECT id, username FROM users WHERE username LIKE ?";
$result = $db->execute_query($sql, ["%{$_POST['user']}%"]);
$data = $result->fetch_all(MYSQLI_ASSOC);</code>

Hilfreiche Ressourcen:

Das obige ist der detaillierte Inhalt vonWie rufe ich alle Ergebnisse einer MySQLi LIKE-Abfrage ab?. 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