您好,欢迎访问一九零五行业门户网

PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别,pdostatement_PHP教程

php pdostatement对象bindpram()、bindvalue()和bindcolumn之间的区别,pdostatementpdostatement::bindparam — 绑定一个参数到指定的变量名。
绑定一个php变量到用作预处理的sql语句中的对应命名占位符或问号占位符。 不同于 pdostatement::bindvalue() ,此变量作为引用被绑定,并只在 pdostatement::execute() 被调用的时候才取其值。
pdostatement::bindvalue — 把一个值绑定到一个参数。
绑定一个值到用作预处理的 sql 语句中的对应命名占位符或问号占位符。
复制代码 代码如下:
$stm = $pdo->prepare(select * from users where user = :user);
$user = jack;
//正确
$stm->bindparam(:user,$user);
//错误
$stm->bindparam(:user,jack);
//正确
$stm->bindvalue(:user,$user);
//正确
$stm->bindvalue(:user,jack);
//所以使用bindparam是第二个参数只能用变量名,而不能用变量值,而bindvalue至可以使用具体值。
?>
pdostatement::bindcolumn — 绑定一列到一个 php 变量。
安排一个特定的变量绑定到一个查询结果集中给定的列。每次调用 pdostatement::fetch() 或 pdostatement::fetchall() 都将更新所有绑定到列的变量。
复制代码 代码如下:
function  readdata ( $dbh ) {
    $sql  =  'select name, colour, calories from fruit' ;
    try {
        $stmt  =  $dbh -> prepare ( $sql );
        $stmt -> execute ();
/*  通过列号绑定  */
        $stmt -> bindcolumn ( 1 ,  $name );
        $stmt -> bindcolumn ( 2 ,  $colour );
/*  通过列名绑定  */
        $stmt -> bindcolumn ( 'calories' ,  $cals );
while ( $row  =  $stmt -> fetch ( pdo :: fetch_bound )) {
            $data  =  $name  .  \t  .  $colour  .  \t  .  $cals  .  \n ;
            print  $data ;
        }
    }
    catch ( pdoexception $e ) {
        print  $e -> getmessage ();
    }
}
readdata ( $dbh );
?>
http://www.bkjia.com/phpjc/915441.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/915441.htmltecharticlephp pdostatement对象bindpram()、bindvalue()和bindcolumn之间的区别,pdostatement pdostatement::bindparam — 绑定一个参数到指定的变量名。 绑定一个php变量...
其它类似信息

推荐信息