码迷,mamicode.com
首页 > Web开发 > 详细

PHP使用PDOStatement处理结果集

时间:2018-01-12 22:32:19      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:fetchall   pdo   fetch   查询   try   nbsp   echo   直接   count()   

1.PDOStatement

  在PDO处理中,只要返回结果集或者使用预处理,就会返回一个PDOStatement对象

2.处理结果集

 使用fetch()获取结果集中的一条记录

 1 <?php
 2     $dsn="mysql:host=127.0.0.1;dbname=example";
 3     $user="root";
 4     $password=‘‘;
 5     try
 6     {
 7         $pdo=new PDO($dsn,$user,$password);
 8         $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
 9 
10         $pdostatement=$pdo->query(‘SELECT * FROM student‘);
11 
12         while($row=$pdostatement->fetch())
13         {
14             print_r($row);echo "<br>";
15         }
16    
17     }
18     catch(PDOException $e)
19     {
20         echo $e->getMessage();
21     } 
22 
23     $pdo=null;   
24 ?>

  可以传递参数指定结果集的返回形式

$row=$pdostatement->fetch(PDO::FETCH_ASSOC)//以关联数组返回
$row=$pdostatement->fetch(PDO::FETCH_NUM)//以索引数组返回

  使用fetchAll()直接将结果集变成一个二维数组返回

 1 <?php
 2     $dsn="mysql:host=127.0.0.1;dbname=example";
 3     $user="root";
 4     $password=‘‘;
 5     try
 6     {
 7         $pdo=new PDO($dsn,$user,$password);
 8         $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
 9 
10         $pdostatement=$pdo->query(‘SELECT * FROM student‘);
11 
12         print_r($pdostatement->fetchAll());
13    
14     }
15     catch(PDOException $e)
16     {
17         echo $e->getMessage();
18     } 
19 
20     $pdo=null;   
21 ?>

 3.rowCount()返回结果集行数或影响行数

$pdostatement=$pdo->query(‘SELECT * FROM student‘);

echo $pdostatement->rowCount();//直接返回查询出的行数

 

$pdostatement=$pdo->prepare("DELETE FROM student");

$pdostatement->execute();

echo $pdostatement->rowCount();//显示删除了多少行

 

PHP使用PDOStatement处理结果集

标签:fetchall   pdo   fetch   查询   try   nbsp   echo   直接   count()   

原文地址:https://www.cnblogs.com/patermenkey/p/8277602.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!