查询

PDOStatement::fetchAll()函数—用法及示例

「 从结果集中获取所有行作为关联数组、索引数组或二者的组合 」


函数名称:PDOStatement::fetchAll()

适用版本:PHP 5, PHP 7

函数描述:该函数用于从结果集中获取所有行作为关联数组、索引数组或二者的组合。

用法:

public array PDOStatement::fetchAll(int $fetch_style = PDO::FETCH_BOTH, mixed $fetch_argument = null, array $ctor_args = array())

参数说明:

  • $fetch_style:可选参数,指定返回的数组类型。默认值为 PDO::FETCH_BOTH,可选值有:
    • PDO::FETCH_ASSOC:返回关联数组。
    • PDO::FETCH_NUM:返回索引数组。
    • PDO::FETCH_BOTH:返回关联数组和索引数组的组合。
    • PDO::FETCH_OBJ:返回匿名对象,属性名对应列名。
  • $fetch_argument:可选参数,进一步定制返回的数组类型。根据 $fetch_style 参数的不同,该参数的含义也不同。例如,如果 $fetch_stylePDO::FETCH_COLUMN,则该参数表示要获取的列索引或名称。
  • $ctor_args:可选参数,用于指定构造函数的参数,用于创建返回结果的对象。

返回值:

  • 成功时,返回包含所有行的数组。
  • 失败时,返回 false

示例:

// 连接到数据库
$dsn = 'mysql:host=localhost;dbname=mydatabase';
$username = 'root';
$password = '';
$pdo = new PDO($dsn, $username, $password);

// 准备并执行查询语句
$stmt = $pdo->prepare('SELECT id, name, email FROM users');
$stmt->execute();

// 获取所有行并以关联数组形式返回
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);

// 遍历结果数组
foreach ($result as $row) {
    echo $row['id'] . ' ' . $row['name'] . ' ' . $row['email'] . '<br>';
}

在上面的示例中,我们使用了 PDO 类连接到数据库,并准备并执行了一条查询语句。然后,我们使用 PDOStatement::fetchAll() 函数以关联数组形式获取了所有行的结果。最后,我们遍历结果数组并输出了每行的 id、name 和 email 字段的值。

补充纠错
下一个函数: PDOStatement::fetch()函数
热门PHP函数
分享链接