PHP mysqli_stmt 对象:一次绑定一个参数

问题描述 投票:0回答:1

有没有一种方法可以在 mysqli_stmt 对象中一次绑定一个参数?即类似,

// $stmt is a mysqli_stmt object.
// $bindvals is an array.

foreach ($bindvals as $item){
    $stmt->bind_param('s',$item);
}

上面抛出“类型定义字符串中的元素数量与绑定变量的数量不匹配”(只要 count($bindvals)>1)。

在这种特殊情况下,我的最终目标是创建一个函数,每当将列添加到表中时都不需要编辑该函数,因此该函数适用于不确定数量的列。

php mysql mysqli
1个回答
0
投票

用 mysqli 不可能做到这一点。这对于 PDO 是可能的,就像 PDO 可以做而 mysqli 不能做的许多其他事情一样。

如果您想使用 mysqli 实现相同的目的,则必须将参数收集在数组中,然后将它们传递给

mysqli_execute()
或在 splat 运算符 (
bind_param()
) 的帮助下使用
...
绑定它们。

© www.soinside.com 2019 - 2024. All rights reserved.