pdostatement::fetchall-k8凯发旗舰
范例
example #1 获取结果集中所有剩余的行
$sth = $dbh->prepare("select name, colour from fruit");
$sth->execute();
/* 获取结果集中所有剩余的行 */
print("fetch all of the remaining rows in the result set:\n");
$result = $sth->fetchall();
print_r($result);
?>
以上例程的输出类似于:
fetch all of the remaining rows in the result set: array ( [0] => array ( [name] => apple [0] => apple [colour] => red [1] => red ) [1] => array ( [name] => pear [0] => pear [colour] => green [1] => green ) [2] => array ( [name] => watermelon [0] => watermelon [colour] => pink [1] => pink ) )
example #2 获取结果集中单独一列的所有值
下面例子演示了如何从一个结果集中返回单独一列所有的值,尽管 sql 语句自身可能返回每行多列。
$sth = $dbh->prepare("select name, colour from fruit");
$sth->execute();
/* 获取第一列所有值 */
$result = $sth->fetchall(pdo::fetch_column, 0);
var_dump($result);
?>
以上例程的输出类似于:
array(3) ( [0] => string(5) => apple [1] => string(4) => pear [2] => string(10) => watermelon )
example #3 根据单独的一列把所有值分组
下面例子演示了如何返回一个根据结果集中指定列的值分组的关联数组。该数组包含三个键:返回的 apple
和 pear
数组包含了两种不同的颜色,而返回的 watermelon
数组仅包含一种颜色。
$insert = $dbh->prepare("insert into fruit(name, colour) values (?, ?)");
$insert->execute(array('apple', 'green'));
$insert->execute(array('pear', 'yellow'));
$sth = $dbh->prepare("select name, colour from fruit");
$sth->execute();
/* 根据第一列分组 */
var_dump($sth->fetchall(pdo::fetch_column|pdo::fetch_group));
?>
以上例程的输出类似于:
#pdo #php