php之bindValue和bindParam的区别
2024-10-19 03:33:25
PDOStatement::bindValue —
把一个值绑定到一个参数
绑定一个值到用作预处理的 SQL 语句中的对应命名占位符或问号占位符。
PDOStatement::bindParam —
绑定一个参数到指定的变量名
绑定一个PHP变量到用作预处理的SQL语句中的对应命名占位符或问号占位符。 不同于 PDOStatement::bindValue() ,此变量作为引用被绑定,并只在 PDOStatement::execute() 被调用的时候才取其值。
区别用代码表示如下:
$sex = 'male';
$s = $dbh->prepare('SELECT name FROM students WHERE sex = :sex');
$s->bindParam(':sex', $sex); // use bindParam to bind the variable
$sex = 'female';
$s->execute(); // executed with WHERE sex = 'female'
$sex = 'male';
$s = $dbh->prepare('SELECT name FROM students WHERE sex = :sex');
$s->bindValue(':sex', $sex); // use bindValue to bind the variable's value
$sex = 'female';
$s->execute(); // executed with WHERE sex = 'male'
当$SEX,被再次赋值时,用bindvalue绑定的,其值还是最开始的值male,但用bindparam绑定的,因为只有在execute()被调用时才会取变量的值,而这时候变量的$sex的值已经由原来的male变成female了。
最新文章
- Cocos2dx中利用双向链表实现无限循环滚动层
- 欧拉工程第54题:Poker hands
- C++动态二维数组的创建
- silverlight5开发的翻牌游戏
- 控制反转(IOC)/依赖注入(DI)理解
- 算法导论(第三版) Exercises4.2(求最大和子数组的算法优化过程)
- 搭建互联网DNS构架
- 初识 Runtime
- mysql—常用查询语句总结
- SQLServer之通过视图修改数据
- springboot整合ueditor 前后端分离
- 【 HDU4773 】Problem of Apollonius (圆的反演)
- matalb 产生信号源 AM调制解调 FM调制解调
- centos7 脚本搭建SVN
- gitlab-ce 安装、汉化与阿里邮箱配置(注意是CE)
- EZ 2018 03 23 NOIP2018 模拟赛(五)
- Wordpress页脚
- Linux常见命令缩写
- mongodb 使用 robo3T 等工具添加用户之后还是 auth failed 的问题
- HBase 系列(三)HBase Shell
热门文章
- vuetify 属性集合
- 使用IDEA构建Spring Boot项目简单实例
- Shiro的认证与授权
- servlet+jsp完成简单登录
- nginx: [emerg] bind() to 0.0.0.0:80 failed (10013:
- Linux 用户操作之用户管理 (用户增删改操作)
- ORA-12560错误
- fileinput模块用法
- Ice系列--傻瓜式服务开发IceBox
- Poj-P1088题解【动态规划/记忆化搜索】