当前位置:首页 > PHP教程 > php高级应用 > 列表

PHP使用PDO抽象层获取查询结果的方法示例

发布:smiling 来源: PHP粉丝网  添加日期:2018-11-07 11:53:03 浏览: 评论:0 

本文实例讲述了PHP使用PDO抽象层获取查询结果的方法。分享给大家供大家参考,具体如下:

PHP使用PDO抽象层获取查询结果,主要有三种方式:

(1)PDO::query()查询。

看下面这段php代码:

  1. <?php 
  2. //PDO::query()查询 
  3. $psql="SELECT * FROM user"
  4. $res = $db->query($psql); 
  5. $res->setFetchMode(PDO::FETCH_NUM); //数字索引方式 
  6. while ($row = $res->fetch()){ 
  7. print_r($row); 
  8. ?> 

(2)PDO->exec()处理sql

  1. <?php 
  2. //PDO->exec()处理sql 
  3. $psql="INSERT INTO user(id , username) values('' , '张三')"
  4. $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
  5. $res = $db->exec($psql); 
  6. echo $res
  7. ?> 

(3)PDO::prepare()预处理执行查询

  1. <?php 
  2. //PDO::prepare()预处理执行查询 
  3. $psql="SELECT * FROM user"
  4. $res = $db->prepare($psql); 
  5. $res->execute(); 
  6. while ($row = $res->fetchAll()) { 
  7. print_r($row); 
  8. ?> 

setAttribute() 方法是设置属性,常用参数如下:

PDO::CASE_LOWER -- 强制列名是小写

PDO::CASE_NATURAL -- 列名按照原始的方式

PDO::CASE_UPPER -- 强制列名为大写

setFetchMode方法来设置获取结果集的返回值的类型,常用参数如下:

PDO::FETCH_ASSOC -- 关联数组形式

PDO::FETCH_NUM -- 数字索引数组形式

PDO::FETCH_BOTH -- 两者数组形式都有,这是默认的

PDO::FETCH_OBJ -- 按照对象的形式,类似于以前的 mysql_fetch_object()

对上面总结如下:

查询操作主要是PDO::query()、PDO::exec()、PDO::prepare()。

PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement”

PDO->exec() — 处理一条SQL语句,并返回所影响的条目数

PDO::prepare()主要是预处理操作,需要通过$rs->execute()来执行预处理里面的SQL语句

最后介绍两个常用的函数:

(1)fetchColumn()获取指定记录里一个字段结果,默认是第一个字段!

  1. <?php 
  2. $psql="SELECT * FROM user"
  3. $res = $db->query($psql); 
  4. //获取指定记录里第二个字段结果 
  5. $col = $res->fetchColumn(1); 
  6. echo $col
  7. ?> 

(2)fetchAll()从一个结果集中获取数据,然后存放在关联数组中

  1. <?php 
  2. $psql="SELECT * FROM user"
  3. $res = $db->query($psql); 
  4. $res_arr =$res->fetchAll(); 
  5. print_r($res_arr); 
  6. ?> 

Tags: PHP PDO 抽象层

分享到: