使用 PDO 确定行数
使用 PHP 和 PDO 时,选择检索行数的最佳方法至关重要。虽然 mysql_num_rows 在 PDO 之前被广泛使用,但这种方法并不总是适合大型数据集。
仅需要行数时的首选解决方案是利用数据库的计数功能。这可以通过如下查询来实现:
$sql = "SELECT count(*) FROM `table` WHERE foo = ?"; $result = $con->prepare($sql); $result->execute([$bar]); $number_of_rows = $result->fetchColumn();
但是,如果同时需要行数和检索的数据,PDO 为缓冲查询提供 PDOStatement::rowCount()。
需要注意的是 rowCount() 可能并不在所有驱动程序中都可靠。对于非 MySQL 数据库,建议使用 SELECT COUNT(*) FROM table 之类的查询,并使用 PDO::query()->fetchColumn() 检索值。
另一个选项是 fetch使用 PDO::fetchAll() 将所有行放入数组中,然后使用 count() 确定行数。
对于没有变量的查询,可以使用 query() 函数准备好的语句方法的介绍:
$nRows = $pdo->query('select count(*) from blah')->fetchColumn(); echo $nRows;
通过根据具体需求选择合适的方法,开发人员可以有效地获取行数,同时最大限度地提高 PHP 应用程序的性能。
以上是如何使用 PDO 高效确定 PHP 中的行数?的详细内容。更多信息请关注PHP中文网其他相关文章!