关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。
想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。
6年前关闭。
谁能给我示例如何在MySQL / PHP中使用参数化查询的例子?
参数化查询本质上是抽象出所有输入的查询。这具有几个良好的副作用,例如使所有输入无害(即不可能进行有害注入),并且由于它是预先分析和编译的,因此在重复使用时使其更快,因此引擎知道如何应用给定的输入。纯mysql中的一个示例是:
PREPARE qry FROM "INSERT INTO tbl VALUES (?)";
现在,该语句已编译并缓存,可以重复执行,而无需重新编译和解释它:
SET @var = "some input"; EXECUTE qry USING @var; SET @var = "some other input"; EXECUTE qry USING @var;
在PHP中使用时,通常是这样的(缩短的):
$stmt = prepare('INSERT INTO tbl VALUES(?)'); execute($stmt, array("some input")); execute($stmt, array("some other input")); execute($stmt, array("some more input"));