作者:ho世英雄 | 来源:互联网 | 2022-12-15 12:15
该查询应该在“用户”表中插入一个新用户
$user = DB::getInstance()->insert('users', array(
'username' => 'jim',
'password' => 'pass',
'salt' => 'salt'
)
);
对应的insert()
public function insert($table, $fields = array())
{
if (count($fields)) {
$keys = array_keys($fields);
$values = null;
$x = 1;
foreach ($fields as $field) {
$values .= "?";
if ($x queryDB($sql,$fields)){
echo "its good";
return true;
}else{
echo "bad query";
}
}
return false;
}
尝试将值数组($ param)绑定查询作为bind_param函数的第二个参数
$stmt = $this->mysqli->prepare($pattern);
$stmt->bind_param("sss", $param);
$stmt->execute();
这段代码不断返回“ mysqli_stmt :: bind_param():类型定义字符串中的元素数量与绑定变量的数量不匹配”错误。
我也尝试过call_user_func_array,但一直收到相同的错误。我做错了什么阿米?
1> Nigel Ren..:
从PHP 5.6开始,您可以使用splat运算符 ...
$stmt->bind_param("sss", ...$param);