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中get_object_vars()方法用法实例

本文实例分析了php中get_object_vars()方法的用法。分享给大家供大家参考。具体分析如下: 语法:get_object_var($object),返回一个数组。获取$obj...

PHP快速排序quicksort实例详解

本文实例讲述了PHP快速排序quicksort。分享给大家供大家参考,具体如下: quicksort 在快速排序算法中,使用了分治策略。首先把序列分成两个子序列,递归地对子序列进行排序,...

PHP Warning: Module 'modulename' already loaded in问题解决办法

出现标题这样的错误大概是: 1、模块加载了两次,所以php -i|grep Configure,看一下配置文件和配置include的目录,对于这些文件中是否有同名的module 2、动态...

PHP生成RSS文件类实例

本文实例讲述了PHP生成RSS文件类文件。分享给大家供大家参考。具体如下: PHP RSS 生成类实例代码如下: 复制代码 代码如下:<?php if (defined(...

php更改目录及子目录下所有的文件后缀的代码

不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。 让大家看看是否需要完善的 代码主要的目的是 批量更改 文件后缀 由于淘宝数据包图片类型的不同 所以要改一下适...