hq22 发表于 2014-03-28 14:34

php pdo如何统计select出来的总数?

由于php5.5开始不太支持php-mysql扩展了。准备开始改用pdo操作数据库。有几个问题需要请教一下:
1,复杂查询分页总数统计,就是where 后面比较多的条件。原先有个mysql_num_rows()函数统计总数,pdo要怎么做?手册上推荐再写一条一样条件的sql.   select count(*) from table where,是这样操作的吗?
2,pdo是不是有参数时候总是用prepare()绑定参数方式执行,以防止参数注入?原先都是先addslashes()转义再插入数据库。pdo是否就不需要了?

weishuo1999 发表于 2014-03-28 15:34

第一个问题,可以用rowCount()函数来取
$sql = "select * from table";
$res = $pdo->prepare($sql);
//$res->exec();
$res->execute();
$num = $res->rowCount();

第二个问题,一般不用,够了。

hq22 发表于 2014-03-28 15:43

$num = $res->rowCount();好像只能用在insert update delete的sql中,不适合用在select的语句中。手册有说明
页: [1]
查看完整版本: php pdo如何统计select出来的总数?