我想從一個已準備好的PDO語句中同時得到返回的行數以及實際行,這可能嗎?是否可以返回行以及來自一個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);
某些DB(例如mysql)將返回通過rowCount()檢索到的總行數,但這不是通用行爲,PDO也不能對此進行反對。你必須運行* TWO *查詢,一個計數,一個執行實際提取。 –
在你的例子中,爲什麼不在'rowCount()'後面對'fetchAll'的結果進行計數而不是對'count'進行計數? rowCount()通常從更新/插入/刪除查詢中返回受影響的行。 – Jon
不會計數($ stmt-> rowCount())總是返回1嗎? – JRL