php动态绑定变量的用法

yipeiwu_com6年前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 $_SERVER windows系统与linux系统下的区别说明

这是我在做企业站的过程中发现的一些区别:(仅供参考) 一、$_SERVER['SERVER_NAME']  在windows系统下,末尾是有 / 的,linux下没有/ 。 可...

rephactor 优秀的PHP的重构工具

PHP框架可以是单一入口,完全面向对象的,完全基于类的MVC模式。但是,我们面对大量的旧的代码,或即便是新的代码,也不尽然完全符合面向对象的原则,符合设计模式。小的应用无妨。但如果面对大...

PHP区块查询实现方法分析

本文实例讲述了PHP区块查询实现方法。分享给大家供大家参考,具体如下: 分块查询是介于顺序查询和折半查询之间的一种查询方法。 其实折半查询就是每次折半的分块查询,那么分块查询就是把数组分...

PHP实现根据设备类型自动跳转相应页面的方法

随着当今移动设备的普及,上网已经比过去更加方便。针对Android智能手机,iPhone/iPad等移动终端,很多网站都相继推出了针对电脑和这类手机等移动设备访问的网页。本文所述的实例代...

PHP基础之输出缓冲区基本概念、原理分析

PHP基础之输出缓冲区基本概念、原理分析

本文实例讲述了PHP基础之输出缓冲区。分享给大家供大家参考,具体如下: 一、概念 在PHP运行的过程中,可以将会产生输出的函数或操作结果暂时保存在PHP的缓冲区,只有当缓冲区满了、或者P...