本帖最后由 xuzuning 于 2013-03-11 09:05:47 编辑 如果你的sql指令就是#1的样子,那么对不起!
select FOUND_ROWS() 不会被发送到mysql去执行,因为他违反了一次只执行一条指令的安全约定
你可以将你的这两条指令写成存储过程
delimiter //<br />CREATE PROCEDURE `test`()<br />begin<br /> select SQL_CALC_FOUND_ROWS * from table limit 1,10;<br /> select FOUND_ROWS();<br />end;<br />// <br />
后这样执行
$queryString = 'call test();';<br />$query = $dbh->query($queryString);<br />do {<br /> $rows = $query->fetchAll();<br /> print_r($rows);<br />}while($query->nextRowset());