我是 PDO 的新手,但我对使用 bindParam 函数有点困惑。是否可以避免使用bindParam?如果不是 - 为什么?
我正在使用这样的存储过程
$e = 'example@g.com';
$p = 'pass123';
$stmt = $dbh->prepare("CALL GetUserByEmail($e, $p) );
$stmt->execute();
然后我想检查结果表中有多少结果..为什么我也不知道该怎么做 - 我习惯使用 mysqli_ 函数。谢谢!
最佳答案
当您准备好语句后,对其调用 execute
函数,并使用参数数组作为唯一参数。
命名参数和“有序”参数之间存在区别:前者有名称(关联数组),后者只有位置(普通数组)。
示例:
$stmt = $dbh->prepare("CALL GetUserByEmail(?, ?)");
$stmt -> execute(array($e, $p));
$stmt = $dbh->prepare("CALL GetUserByEmail(:emails, :passwords)");
$stmt -> execute(array(':emails' => $e, ':passwords' => $p));
另请参阅文档:http://www.php.net/manual/en/pdostatement.execute.php .
<小时/>要获取行数,请对结果调用 rowCount
函数:
$stmt -> rowCount(); // Amount of rows selected
关于php - PDO BindParam 捷径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23039114/