PHP 手册
后退 |  | 前进

# sqlite_fetch_all

(PHP 5)

sqlite_fetch_all

(no version information, might be only in CVS)

SQLiteResult->fetchAll

(no version information, might be only in CVS)

SQLiteUnbuffered->fetchAll -- Fetches all rows from a result set as an array of arrays

## 说明

array sqlite_fetch_all ( resource result [, int result_type [, bool decode_binary]] )

Object oriented style (method):

class SQLiteResult {
array fetchAll ( [int result_type [, bool decode_binary]] )
}class SQLiteUnbuffered {
array fetchAll ( [int result_type [, bool decode_binary]] )
}

sqlite_fetch_all() returns an array of the entire result set from the result resource. It is similar to calling sqlite_query() (or sqlite_unbuffered_query()) and then sqlite_fetch_array() for each row in the result set.

## 参数

result

  The SQLite result resource. This parameter is not required when using the object-oriented method.

result_type

  可选的 result_type 参数接受一个常量并决定返回的数组如何索引。用 `SQLITE_ASSOC` 只会返回关联索引（有名称字段）而 `SQLITE_NUM` 只会返回数字索引（有序字段数）。`SQLITE_BOTH` 会同时返回关联和数字索引。 `SQLITE_BOTH` 是本函数的默认值。

decode_binary

  当 decode_binary 参数设为 `TRUE`（默认值）时，PHP 将解码那些由 sqlite_escape_string() 编码的数据。通常应保留此值为其默认值，除非在操作其它支持 sqlite 程序建立的数据库时。

## 返回值

Returns an array of the remaining rows in a result set. If called right after sqlite_query(), it returns all rows. If called after sqlite_fetch_array(), it returns the rest. If there are no rows in a result set, it returns an empty array.

由 `SQLITE_ASSOC` 和 `SQLITE_BOTH` 返回的列名会根据 sqlite.assoc_case 配置选项的值来决定大小写。

## 范例

例子 1. Procedural example

`<?php $dbhandle = sqlite_open('sqlitedb'); $query = sqlite_query($dbhandle, 'SELECT name, email FROM users LIMIT 25'); $result = sqlite_fetch_all($query, SQLITE_ASSOC); foreach ($result as $entry) { echo 'Name: ' . $entry['name'] . ' E-mail: ' . $entry['email']; } ?>`

例子 2. Object-oriented example

`<?php $dbhandle = new SQLiteDatabase('sqlitedb'); $query = $dbhandle->query('SELECT name, email FROM users LIMIT 25'); // buffered result set $query = $dbhandle->unbufferedQuery('SELECT name, email FROM users LIMIT 25'); // unbuffered result set $result = $query->fetchAll(SQLITE_ASSOC); foreach ($result as $entry) { echo 'Name: ' . $entry['name'] . ' E-mail: ' . $entry['email']; } ?>`

## 参见

sqlite_fetch_array()

后退 | 起点 | 前进
sqlite_factory | 上一级 | sqlite_fetch_array