猿问

有谁能帮忙说下mysqli预处理查询取*的方法的一段代码是什么意思嘛?如下代码

$result = $mysqli_stmt->result_metadata();
$fields = $result->fetch_fields();
foreach($fields as $field){
    $column[]=&$out[$field->name];
}
call_user_func_array(array($mysqli_stmt,'bind_result'),$column);
while ($mysqli_stmt->fetch()) {
    $t=array();
    foreach($out as $key=>$val){
        $t[$key]=$val;
    }
    $res[]=$t;
}

array($mysqli_stmt,'bind_result')这个是干什么?

侠客岛的含笑
浏览 1442回答 1
1回答

pardon110

call_user_func_array — 调用回调函数,并把一个数组参数作为回调函数的参数mixed call_user_func_array    ( callable $callback   , array $param_arr   )把第一个参数作为回调函数(callback)调用,把参数数组作(param_arr)为回调函数的的参数传入,这个数组得是索引数组。  注意:其第一个参数为函数或实例的方法使用区别如下:call_user_func_array("foobar", array("one", "two"));            // 调用foobar函数,并传入one,two两个参数 实际就是执行函数 foobar("one", "two");$foo = new foo;call_user_func_array(array($foo, "bar"), array("three", "four"));    // 调用实例$foo的bar方法,并使用参数three,four实际执行方法 $foo->bar("three", "four");call_user_func_array(array($mysqli_stmt,'bind_result'),$column);实际就是 $mysqli_stmt->bind_result($column); 对字段进行转义或拼接之类安全处理
随时随地看视频慕课网APP
我要回答