我是PDO的新手,我正在尝试使用" mysql_num_rows"获取与我们过去使用" mysql_num_rows"获得的相同值的相同值,但是返回" 1"应该返回的地方" 0":
下面的函数返回" 1",它应该返回" 0"
public function countdata($field, $table, $where = "1") {
$ar = $this->pdo->prepare("SELECT COUNT(`" . $field . "`) FROM `" . $table . "` WHERE " . $where . "");
$ar->execute();
$cnt=$ar->fetchColumn();
return $cnt;
}
答案 0 :(得分:1)
这个问题以及背后的迷信是duplicate
你实际上既不需要mysql_num_rows,也不需要rowCount,也不需要你的不安全功能。它写得很好,我不得不承认 - 比平常发布的东西要好得多。但它有一个重要的缺陷 - 它不支持准备好的陈述 - 毕竟是使用PDO的唯一原因。
而且,如上所述 - 它只是没用。如果你仔细想想,你会发现,每当你想要从这样的功能中获得某些东西时,你就已经拥有了它。
答案 1 :(得分:-1)
这个方面的工作:
public function countdata($field, $table, $where = "1") {
$ar = $this->pdo->prepare("SELECT COUNT(`" . $field . "`) FROM `" . $table . "` WHERE " . $where . "");
$ar->execute();
$cnt=$ar->rowCount();
return $cnt;
}