Usage of php dynamic binding variables
This article describes the usage of php dynamic binding variables. Share it with everyone for your reference. The details are as follows:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
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
//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
|
1
2
3
4
5
6
7
8
9
10
11
12
1314
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
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
|
I hope this article will be helpful to everyone’s PHP programming design.
http://www.bkjia.com/PHPjc/1017137.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1017137.htmlTechArticleUsage of php dynamic binding variables. This article describes the usage of php dynamic binding variables. Share it with everyone for your reference. The details are as follows: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18...