bindParam 和 bindValue 有什么区别

本文对比了bindParam和bindValue在PHP PDO中的使用,讲解了它们如何将变量与SQL语句中的占位符关联,以及各自的特点:bindParam以引用方式绑定,仅在执行时评估;bindValue则直接绑定值。
摘要由CSDN通过智能技术生成

bindParam 和 bindValue 的区别如下:

bindParam
将参数绑定到指定的变量名
将 PHP 变量绑定到 SQL 语句中相应的命名或问号占位符
变量作为引用绑定,并且只会在调用 PDOStatement::execute() 时进行评估。

<?php

$sal = 15000;
$age = 25;
$sth = $dbh->prepare('SELECT employee
    FROM employee
    WHERE age > :age AND salary = :sal');
$sth->bindParam(':age', $age, PDO::PARAM_INT);
$sth->bindParam(':salary', $sal, PDO::PARAM_INT);
$sth->execute();

?>

绑定值:

将值绑定到参数
将值绑定到用于准备语句的 SQL 语句中的相应命名或问号占位符。

<?php

$sal = 15000;
$age = 25;
$sth = $dbh->prepare('SELECT employee
    FROM employee
    WHERE age > :age AND salary = :sal');
$sth->bindValue(':age', $age, PDO::PARAM_INT);
$sth->bindValue(':salary', $sal, PDO::PARAM_INT);
$sth->execute();

?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值