2012-08-28 78 views
0

如果我这样做:PDO执行和bindparam

$qry->execute(array($usuario,$pass)); 

,而不是这样的:

$qry->bindParam(1, $usuario); 
$qry->bindParam(2, $pass); 
$qry->execute(); 

这是否给一个安全问题吗?

回答

6

不,它们具有相同的语义

而且它在documentation

规定执行准备好的语句。如果准备好的语句包含参数标记,你必须:

  • 调用PDOStatement对象:: bindParam()绑定PHP变量到参数标记:绑定变量传递他们的价值作为输入和接收输出值,如果有的话,它们相关联的参数的标记

  • 或通过仅用于输入参数的值的数组

0

不,它不会。它会正常工作。