• PHP之pdo的预处理模式


     1 <?php
     2 
     3     /*
     4         PDO&PDOSstatement
     5             PDO:常规操作类。
     6             PDOStatement PDO语句结果集类,sql执行完毕,后续处理结果集时候,用PDOStatement
     7         预编译+数据绑定+执行
     8         
     9 
    10 
    11     */
    12 
    13     $sql = "SELECT * FROM `article` WHERE `id` =? ";        
    14     //预编译
    15     $prepare_res = $pdo->prepare($sql);
    16     //绑定参数
    17     $prepare_res->bindValue(1,1); //第一个1是第一个参数,第二个1是需要的值
    18     //执行
    19     $prepare_res->execute();
    20 
    21     $res_info = $prepare_res->fetch(PDO::FETCH_ASSOC);
    22     var_dump($res_info);
    23 
    24     /*
    25         预编译+数据绑定+执行
    26         优势:将语句的结构部分优先编译,结构部分指的是,将数据使用占位符进行替换,先进性编译; 再进行数据绑定,将数据绑定到编译好的SQL结构上。
    27         
    28         好处:1,更好的防止sql注入。结构和数据分离,可以从根本上解决sql注入问题。结构在数据绑定前,已经确定了。2,如果结构相同的sql被重复执行,只需要编译结构一次,后续直接进行数据绑定即可。体现代码的重用。
    29         bindValue(占位符|标签占位符,值,数据类型) 数据类型:PDO::PARAM_INT PDO::PARAM_STR
    30 
    31         PDOStamement对象常用的方法:
    32             $pdoStatement->fetchAll()
    33             $pdoStatement->fetch()
    34             $pdoStatement->fetchColumn()
    35             $pdoStatement->bindValue()
    36             $pdoStatement->execute()
    37             $pdoStatement->errorCode()
    38             $pdoStatement->errorInfo()
    39 
    40             $pdoStatement->coloseCursor() //用于释放结果集光标(指针)
    41             tips:在获取完数据后,最好调用该方法,释放结果集指针
    42 
    43             如果结果集中,存在多条数据,但是仅仅fetch其中部分,没有全部获取,此时如果需要处理新的结果集,一定要释放之前的结果集指针。
    44 
    45             $pdoStatement->rowCount(); //统计行数,兼结果集中记录数与影响的行数功能。
    46 
    47     */
  • 相关阅读:
    javascript 面向对象 new 关键字 原型链 构造函数
    前端性能优化之gzip
    电子商务秒杀所带来的问题
    git 远程版本库,github提供服务原理,git自动更新发送邮件
    单点登陆的三种实现方式(详解)
    使用php实现单点登录
    支付宝异步回调
    http状态码大全
    php 单向散列加密
    curl模拟post请求
  • 原文地址:https://www.cnblogs.com/sharecorner/p/6155179.html
Copyright © 2020-2023  润新知