php-PDO-预处理绑定参数的一个细节
2014-10-20 18:04
337 查看
//parameter = array(':username'=>'jack', ':money'=>'123.00') foreach ($parameters as $key => $value) { $stmt->bindParam($key, $value); //绑定参数,$stmt是预处理对象 }
在循环绑定参数时不可直接使用$value,应用不同的变量名绑定。如果使用了同一个变量名,在调用execute()时,绑定的值就变成了最后一次循环时赋值给$value的值。
所以上述代码可以改写成:
//parameter = array(':username'=>'jack', ':money'=>'123.00') foreach ($parameters as $key => $value) { //$stmt->bindParam($key, $value); //绑定参数,$stmt是预处理对象 $stmt->bindParam($key, $parameters[$key]); }
看官方手册:
public bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )第二个参数mixed &$variable按引用传递参数的,所以只能提供变量作为参数,不能直接提供数值。
相关文章推荐
- [PDO绑定参数]使用PHP的PDO扩展进行批量更新操作
- [PDO绑定参数]使用PHP的PDO扩展进行批量更新操作
- PHP - PDO 之 mysql 参数绑定
- php学习笔记(二十三)PDO的预处理语句的查询以及结果集的使用
- php memcache扩展的一个细节
- javascript 的参数有长度限制吗?一个细节引起的误区 分类: 网页编程【html、js】 2009-11-10 08:34 1673人阅读 评论(0) 收藏
- javascript 的参数有长度限制吗?一个细节引起的误区
- 绑定一个带参数的函数
- PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
- Building Coder(Revit 二次开发) - 为一个共享参数绑定添加一个类别
- javascript 的参数有长度限制吗?一个细节引起的误区
- PHP同一个IP绑定多个域名(六)
- 一个 Javascript 的日历 (PHP 文件, 带农历参数) by Emerald 绿色学院 - Green Institute
- PHP_PDO 调用mysql 带返回参数的存储过程
- PHP学习 pdo预处理sql 增加
- 如果你 <?php ?>好使 但 <? ?> 就不好使,其实是php.ini中的一个参数问题
- PHP 5.2 中实现partial参数绑定
- PHP中PDO方法fetch参数问题
- 使用Socket套接字绑定函数bind的一个细节
- 一个控件的多个参数被绑定