2

我对使用绑定感到困惑!下面这两个代码有什么区别吗?

$stmt->bindValue( ":password", $password, PDO::PARAM_INT );

$stmt->bindParam(':password',$password);
4

1 回答 1

3

根据PHP.Net

与 PDOStatement::bindValue() 不同,该变量被绑定为引用,并且只会在调用 PDOStatement::execute() 时进行评估。

所以使用bindParam(),如果你在调用execute()之前改变了变量,它将使用改变的值。bindValue() 将立即评估它并使用该值,而不关心在调用 bindValue() 之后但在 execute() 之前的任何更改。

于 2012-07-27T02:09:51.450 回答