fetchAll()方法获取结果集中的所有行。其语法如下:
Array PDOStatement::fetchAll([int fetch_style[,int column_index]])
参数fetch_style:控制结果集中数据的返回方式,其可选值为
PDO::FETCH_ASSOC 关联数组形式
PDO::FETCH_NUM 数字索引数组形式
PDO::FETCH_BOTH 两者数组形式都有,这是默认的
PDO::FETCH_OBJ 按照对象的形式,类似于以前的mysql_fetch_object()
PDO::FETCH_BOUND 以布尔值的形式返回结果,同时将获取的列值赋给bindParam()方法中指定的变量
PDO::FETCH_LAZY 以关联数组、数字索引数组和对象3种形式返回结果。
参数column_index:字段的索引。
其返回值是一个包含结果集中所有数据的二维数组。
例:
<?php
$dbms='mysql';
$dbname='sina';
$user='root';
$pwd='miniserver';
$host='127.0.0.1';
$dsn="$dbms:host=$host;dbname=$dbname";
try{
$pdo=new PDO($dsn,$user,$pwd);
$pdo->query("SET NAMES utf8");
$query="select * from message1";
$result=$pdo->prepare($query);
$result->execute();
$res=$result->fetchAll(PDO::FETCH_ASSOC);
for($i=0;$i<count($res);$i++){
?>
<?php echo $res[$i]['ID']; ?>
<?php echo $res[$i]['content']; ?>
<?php echo $res[$i]['posttime']; ?>
<a href="#">删除</a><br/>
<?php
}
}catch(PDOException $e){
die("Error!".$e->getMessage()."<br/>") ;
}
?>