PDO中fetchColumn()的非对象错误

时间:2012-03-25 21:33:53

标签: php mysql pdo fetch

当我使用PHP上的mysql预处理语句执行查询时,我收到Call to a member function fetchColumn() on a non-object错误

$result= $dbh->prepare("SELECT COUNT(*) FROM table WHERE id_1 = ? AND id_2 = ?");
$result->execute(array($id_1,$id_2))->fetchColumn();
echo count($result);

出现此错误的原因是什么?我写的声明不正确吗?

由于

1 个答案:

答案 0 :(得分:1)

PDOStatement::execute返回一个布尔值来检查您的查询是否已正确执行。如果每个方法都返回PDOStatement对象的引用,则只能链接方法调用。你想这样做

$result= $dbh->prepare("SELECT COUNT(*) FROM table WHERE id_1 = ? AND id_2 = ?");
$result->execute(array($id_1,$id_2));
echo $result->fetchColumn();