如何将mysqli :: bind_param与数组一起用作第二个参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将mysqli :: bind_param与数组一起用作第二个参数相关的知识,希望对你有一定的参考价值。
此查询应该将新用户插入“用户”表
$user = DB::getInstance()->insert('users', array(
'username' => 'jim',
'password' => 'pass',
'salt' => 'salt'
)
);
对应的插入()
public function insert($table, $fields = array())
if (count($fields))
$keys = array_keys($fields);
$values = null;
$x = 1;
foreach ($fields as $field)
$values .= "?";
if ($x < count($fields))
$values .= ', ';
$x++;
$sql = "INSERT INTO users (`" . implode('`,`', $keys) . "`) VALUES ($values)";
echo $sql;
if($this->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,但是仍然遇到同样的错误。我做错了什么?
从php 5.6开始,您可以使用splat运算符...
$stmt->bind_param("sss", ...$param);
以上是关于如何将mysqli :: bind_param与数组一起用作第二个参数的主要内容,如果未能解决你的问题,请参考以下文章
mysqli_fetch_assoc() 期望参数/调用成员函数 bind_param() 错误。如何获得实际的mysql错误并修复它?
mysqli_fetch_assoc() 期望参数/调用成员函数 bind_param() 错误。如何获得实际的mysql错误并修复它?
mysqli_fetch_assoc() 期望参数/调用成员函数 bind_param() 错误。如何获得实际的mysql错误并修复它?
mysqli_fetch_assoc() 期望参数/调用成员函数 bind_param() 错误。如何获得实际的mysql错误并修复它?
mysqli_fetch_assoc() 期望参数/调用成员函数 bind_param() 错误。如何获得实际的mysql错误并修复它?
mysqli_fetch_assoc() 期望参数/调用成员函数 bind_param() 错误。如何获得实际的mysql错误并修复它?