动态 bindVars 的用法
程序员文章站
2022-06-08 16:24:34
...
动态 bindVars 的用法
private function bindVars($stmt,$params) { if ($params != null) { $types = ''; //initial sting with types foreach($params as $param) { //for each element, determine type and add if(is_int($param)) { $types .= 'i'; //integer } elseif (is_float($param)) { $types .= 'd'; //double } elseif (is_string($param)) { $types .= 's'; //string } else { $types .= 'b'; //blob and unknown } } $bind_names[] = $types; //first param needed is the type string // eg: 'issss' for ($i=0; $i<count($params);$i++) {//go through incoming params and added em to array $bind_name = 'bind' . $i; //give them an arbitrary name $$bind_name = $params[$i]; //add the parameter to the variable variable $bind_names[] = &$$bind_name; //now associate the variable as an element in an array } //call the function bind_param with dynamic params call_user_func_array(array($stmt,'bind_param'),$bind_names); } return $stmt; //return the bound statement