gpt4 book ai didi

php - PDO,准备声明但我不绑定(bind)值

转载 作者:行者123 更新时间:2023-11-29 06:33:37 24 4
gpt4 key购买 nike

如果我不绑定(bind)值但准备语句,有什么不同。它以两种方式工作,它是否具有更好的安全性?这是代码

$db = new PDO("mysql:host=".$server.";dbname=".$dbName.";charset=utf8", $user, $pwd, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

$stmt = $db->prepare(UPDATE table1 SET a = 1, name = ?, last_seen = NOW() WHERE b = ?);
$paramAry[0] = "abc";
$paramAry[1] = "def";
$stmt->execute($paramAry);

$db = new PDO("mysql:host=".$server.";dbname=".$dbName.";charset=utf8", $user, $pwd, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

$stmt = $db->prepare(UPDATE table1 SET a = 1, name = ?, last_seen = NOW() WHERE b = ?);
$paramAry[0] = "abc";
$paramAry[1] = "def";

$stmt->bindValue(1, $paramAry[0], PDO::PARAM_STR);
$stmt->bindValue(2, $paramAry[1], PDO::PARAM_STR);

$stmt->execute();

最佳答案

没有区别。您可以在调用 execute() 之前使用 bindValue()bindParam(),也可以将参数数组传递给 执行()

如果您的参数已经在数组中,则通常使用 execute() 的数组参数,并使用 bindParam()bindValue() 如果它们在不同的变量中。但这完全取决于您和您的喜好。

关于php - PDO,准备声明但我不绑定(bind)值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26375918/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com