PDO has a function PDOStatement::rowCount that returns the number of rows affected by the previous SQL statement. The result of the
rowCount function is correct for DELETE, INSERT, or UPDATE statements, but for select statements, it is related to the implementation of the database. Some databases will read all the result sets into memory when executing a select statement, but for a huge number of result sets, this is obviously inefficient. Most databases will only return part of the result set, and then return the rest of the result set when needed, so that both memory usage and execution efficiency are optimized. In the latter case, rowCount cannot return the correct number of rows in the SELECT statement result set.
There are several ways to get the correct number of rows in the SELECT result
1. Use the fetchAll function
$q = $db->query("SELECT ...");
$rows = $q->fetchAll();
$rowCount = count($rows);
2. Use sql count function
$q = $db->query("SELECT count(*) from db;");
$rows = $q->fetch();
$rowCount = $rows[0];
Obviously the second method is more efficient
The above introduces the calculation of the number of rows in the PHP PDO select statement result, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.