php动态绑定变量的用法

yipeiwu_com7年前PHP代码库

本文实例讲述了php动态绑定变量的用法。分享给大家供大家参考。具体如下:

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

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题

返回一个交集共有元素的数组(只是数组值得比较)、array_intersect_assoc()函数是将键值和值绑定,一起比较交集部分、array_intersect_key()函数是将两...

Godaddy空间Zend Optimizer升级方法

但今天在安装测试程序的时候提示zend Optimizer not installed.这让我很迷茫,这么普遍的空间为什么没有安装zend了,然后我查看info.php,我惊奇的发现,服...

解析PHP中的unset究竟会不会释放内存

首先让我们看一个例子复制代码 代码如下:    var_dump(memory_get_usage());    $a = "...

php+ajax无刷新上传图片实例代码

php+ajax无刷新上传图片实例代码

本文分享了php结合ajax实现无刷新上传图片的实例代码,分享给大家,希望大家可以和小编一起学习学习,共同进步。 1.引入文件 <!--图片上传begin--> <...

详解PHP中foreach的用法和实例

详解PHP中foreach的用法和实例

在PHP中经常会用到foreach的使用,而要用到foreach,就必须用到数组。因此,在这篇文章中,我们一边讲数组,一边讲foreach。 foreach有两种语法: 第一种:遍历给...