Heim >Backend-Entwicklung >PHP-Tutorial >Wie vermeide ich leere Arrays beim Abrufen von MySQL-Zeilen mit „mysqli_fetch_row()'?

Wie vermeide ich leere Arrays beim Abrufen von MySQL-Zeilen mit „mysqli_fetch_row()'?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-26 09:34:16979Durchsuche

How to Avoid Empty Arrays When Fetching MySQL Rows Using `mysqli_fetch_row()`?

Abrufen von Zeilen aus einem MySQL-Ergebnisobjekt mit mysqli

Um alle Zeilen aus einem MySQL-Ergebnisobjekt abzurufen und ein neues Array zu erstellen, um sie zu speichern, Die Methode fetch_row() kann verwendet werden. Es ist jedoch wichtig, einen Syntaxfehler zu beheben, der dazu führen kann, dass anstelle der erwarteten Zeilen ein leeres Array zurückgegeben wird.

Problem:

Im bereitgestellten Codeausschnitt Am Ende der While-Schleifenanweisung befindet sich ein fehlerhaftes Semikolon:

while($row = $result->fetch_row());

Dieses Semikolon beendet die While-Schleife vorzeitig, was dazu führt, dass der Code innerhalb der Schleife nicht ausgeführt wird.

Lösung:

Um dieses Problem zu beheben, entfernen Sie einfach das Semikolon, um die korrekte Ausführung der Schleife zu ermöglichen :

while($row = $result->fetch_row()) {
    $rows[] = $row;
}

Fehlerberichterstattung:

Zusätzlich, Es ist ratsam, MySQLi aufzufordern, alle aufgetretenen Probleme zu melden:

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$sql = new mysqli($config['host'], $config['user'], $config['pass'], $config['db_name']);

$query = "SELECT domain FROM services";
$result = $sql->query($query);
$rows = [];
while($row = $result->fetch_row()) {
    $rows[] = $row;
}
return $rows;

Wenn Sie diese Vorschläge befolgen, sollten Sie in der Lage sein, alle Zeilen aus dem Ergebnisobjekt erfolgreich abzurufen und im $rows-Array zu speichern.

Das obige ist der detaillierte Inhalt vonWie vermeide ich leere Arrays beim Abrufen von MySQL-Zeilen mit „mysqli_fetch_row()'?. 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