Heim >Backend-Entwicklung >PHP-Tutorial >Was ist der optimale Ansatz, um mit PDO in PHP eine Zeilenanzahl zu ermitteln?

Was ist der optimale Ansatz, um mit PDO in PHP eine Zeilenanzahl zu ermitteln?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-23 19:39:21360Durchsuche

What's the Optimal Approach to Getting a Row Count with PDO in PHP?

Zeilenanzahl mit PDO: Optimaler Ansatz

Das Ermitteln der Zeilenanzahl mithilfe von PDO in PHP kann durch verschiedene Methoden erreicht werden. Der beste Ansatz hängt jedoch von Ihrem spezifischen Anwendungsfall und den Überlegungen zur Datengröße ab.

Wenn Sie nur die Zeilenanzahl und nicht die Daten selbst benötigen, wird die Verwendung der Abfrage „SELECT count(*)“ empfohlen. Hier ist ein Codebeispiel:

$sql = "SELECT count(*) FROM `table` WHERE foo = ?";
$result = $con->prepare($sql);
$result->execute([$bar]);
$number_of_rows = $result->fetchColumn();

Für Szenarien, in denen Sie die Anzahl der Zeilen zusammen mit den abgerufenen Daten benötigen, stellt PDO die Methode PDOStatement::rowCount() bereit. Die Zuverlässigkeit bei verschiedenen Treibern kann jedoch nicht garantiert werden. Gemäß der PDO-Dokumentation:

"Bei den meisten Datenbanken gibt PDOStatement::rowCount() nicht die Anzahl der Zeilen zurück, die von einer SELECT-Anweisung betroffen sind... Verwenden Sie stattdessen PDO::query(), um eine auszugeben SELECT COUNT(*)-Anweisung... dann verwenden Sie PDOStatement::fetchColumn(), um die Anzahl der Zeilen abzurufen, die zurückgegeben werden.“

In solchen Fällen können Sie verwenden Verwenden Sie die Funktion PDO::fetchAll(), um die Daten in ein Array abzurufen, und verwenden Sie dann count(), um die Anzahl der Zeilen zu bestimmen.

$data = $pdo->fetchAll();
$number_of_rows = count($data);

Alternativ, wenn Ihre Abfrage einfach ist und keine Variablen verwendet , können Sie die Funktion query() direkt verwenden:

$nRows = $pdo->query('select count(*) from blah')->fetchColumn();
echo $nRows;

Das obige ist der detaillierte Inhalt vonWas ist der optimale Ansatz, um mit PDO in PHP eine Zeilenanzahl zu ermitteln?. 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