Blogger Information
Blog 30
fans 0
comment 0
visits 23418
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PDO之预处理操作
深海巨兽皮皮虾的博客
Original
1303 people have browsed it

    PDO预处理之读操作:

$dsn = "mysql:host=localhost;dbname=demo;charset=utf8";
$pdo = new PDO($dsn,'root','root');
$sql = "SELECT `id`,`name`,`email` FROM user1 WHERE `id`=:id";
//1.准备SQL语句,生成对象
$pdoStmt = $pdo->prepare($sql);
if(true == $pdoStmt){
//    $res = $pdoStmt->execute(['id'=>2]);
    $id = 5;
    //2.绑定参数
    $pdoStmt->bindParam('id',$id);
    //3.执行
    $res = $pdoStmt->execute();
    if($res){
        //判断结果集数量
        if($pdoStmt->rowCount()>0){
//            print_r($pdoStmt->fetch(PDO::FETCH_ASSOC));
            //设置取出方式,关联数组
            $pdoStmt->setFetchMode(PDO::FETCH_ASSOC);
            //取出数据
            print_r($pdoStmt->fetch());
        }
    }
}

    PDO之写操作(以新增为例):

$dsn = "mysql:host=localhost;dbname=demo;charset=utf8";
$pdo =  new PDO($dsn,'root','root');
$sql = "INSERT user1 SET `name`=:name,`email`=:email,`password`=sha1(:password)";
$pdoStmt = $pdo->prepare($sql);
//print_r($pdoStmt);
$data = ['name'=>'张无忌','email'=>'zwj@php.cn','password'=>'123456'];
//$pdoStmt->bindParam('name',$data['name'],)
$res = $pdoStmt->execute($data);
var_dump($res);

    总结:

    1.预处理操作实用 名称占位符  :name : email

    2.预处理操作步骤: (1)准备SQL语句 生成 $pdoStmt 对象 (2)绑定参数 方法一 在执行时直接放置 数据参数

    $pdoStmt->execute($data array) ,方法二:$pdoStmt->bindParam('id',$id) 一次绑定一个

    (3)执行:与常用操作不同 读写均实用 $pdoStmt->execute()执行。写曹组I直接返回布尔值,读操作返回结果集

    使用 $pdoStmt->rowCount() 获取结果集数量,通过两种方式改变输出形式(执行后返回的是关联加数组的结果集)

    方法一:$pdoStmt->fetch(PDO::FETCH_ASSOC) or  $pdoStmt->fetchAll(PDO::FETCH_ASSOC)

    方法二:$pdoStmt->setFetchMode(PDO::FETCH_ASSOC)后取出



Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post