【发布时间】:2017-08-24 12:24:28
【问题描述】:
Notice : Array to string conversion
每次我尝试打电话时
call_user_func_array ("mysqli_stmt_bind_param", array_merge (array ($stmt,
$types),refValues ($params_array)))
$param_array 包含参数值,函数 refValues 返回此数组的引用
例如,如果我执行此请求 insert into table1(column1) values(value1)
Column1 的值将是 'Array'。
我不确定这里有什么问题,有人说通知意味着我的数组里面包含一个数组,有人说这个数组不是数组 我很困惑
这是代码示例
$_POST["params"] 包含类似的类型和参数 "{type1:value1}{type2:value2}"
$ps = mysqli_prepare($cn,base64_decode($nq));
$params = $_POST["params"];
$params_array = array();
$types ="";
while(strlen($params)>0)
{
try
{
$n1 = strpos($params,"{");
$n2 = strpos($params,"}");
$param = substr($params,$n1+1,$n2-($n1+1));
$param_exploded = explode(":",$param);
$type = $param_exploded[0];
$types.=$type;
echo "$type \n";
$param_ex = $param_exploded[1];
echo "$param_ex \n";
$param_ex = str_replace(array("&bg","&sp","&en"),array("{",":","}"),$param_exploded);
array_push($params_array,$param_ex);
if($n2+1>=strlen($params))
break;
$params = substr($params,$n2+1);
}catch(Exception $x)
{
break;
}
}
call_user_func_array("mysqli_stmt_bind_param",array_merge(array($ps),array($types),refValues($params_array)));
mysqli_stmt_execute($ps);
mysqli_close($cn);
【问题讨论】:
-
请展示一个完整的例子,而不是期望人们根据你模糊的口头描述知道到底发生了什么。
-
@CBroe 好的,等等,兄弟
-
@CBroe 更新了看看 :)
-
@AbraCadaver 那不是我说的数组看看代码
标签: php arrays mysqli callback bindparam