有许多相互矛盾的说法.在PHP中使用PDO获取行数的最佳方法是什么?在使用PDO之前,我只使用了mysql_num_rows
.
fetchAll
是我不想要的东西,因为我有时可能要处理 Big Data 集,所以对我的使用不好.
你有什么建议吗?
有许多相互矛盾的说法.在PHP中使用PDO获取行数的最佳方法是什么?在使用PDO之前,我只使用了mysql_num_rows
.
fetchAll
是我不想要的东西,因为我有时可能要处理 Big Data 集,所以对我的使用不好.
你有什么建议吗?
$sql = "SELECT count(*) FROM `table` WHERE foo = ?";
$result = $con->prepare($sql);
$result->execute([$bar]);
$number_of_rows = $result->fetchColumn();
这不是最优雅的方式,而且还涉及到额外的查询.
PDO有PDOStatement::rowCount()
个,显然在MySQL中有not个工作.好痛苦啊.
从PDO文档:
对于大多数数据库,
编辑:上面的代码示例使用了一条准备好的语句,在许多情况下,这对于计算行数来说可能是不必要的,因此:
$nRows = $pdo->query('select count(*) from blah')->fetchColumn();
echo $nRows;