-1

我想从一个准备好的 PDO 语句中获取返回的行数和实际行数,这可能吗?

我正在使用 PHP 5+ 和 Mysql。

例如:

global $dbh
$query = "SELECT title, date, title, description
        FROM posts
        WHERE title LIKE '%foo%'
        ORDER BY date
        DESC";

$stmt->prepare($query);
$stmt-execute();

$count = count($stmt->rowCount());
$searcharray = $stmt->fetchAll(PDO::FETCH_ASSOC);

return array($count, $searcharray);
4

2 回答 2

0

根据请求,回答表格。^^

将代码更改为:

global $dbh
$query = "SELECT title, date, title, description
        FROM posts
        WHERE title LIKE '%foo%'
        ORDER BY date
        DESC";

$stmt->prepare($query);
$stmt-execute();

$searcharray = $stmt->fetchAll(PDO::FETCH_ASSOC);
$count = count($searcharray);

return array($count, $searcharray);

PDOStatment::rowCount()函数返回更新/插入/删除语句的受影响行。相反,对fetchAllas 的结果进行计数,这将准确计算从 select 语句返回的行数。

于 2013-04-13T23:17:13.310 回答
0

当你有一个行数组时,你不需要计数。你可以随时得到它。
因此,只需返回一个数组,然后在需要时进行计数。

于 2013-04-14T05:48:41.667 回答