# sqlite_fetch_all

# SQLiteResult::fetchAll

# SQLiteUnbuffered::fetchAll

(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)

sqlite_fetch_all -- SQLiteResult::fetchAll -- SQLiteUnbuffered::fetchAll — Fetches all rows from a result set as an array of arrays

### Description

sqlite_fetch_all ( resource `$result` [, int `$result_type` = SQLITE_BOTH [, bool `$decode_binary` = `TRUE` ]] ) : array

Object oriented style (method):

SQLiteResult::fetchAll ([ int `$result_type` = SQLITE_BOTH [, bool `$decode_binary` = `TRUE` ]] ) : array
SQLiteUnbuffered::fetchAll ([ int `$result_type` = SQLITE_BOTH [, bool `$decode_binary` = `TRUE` ]] ) : array

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.

### Parameters

`result`

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

`result_type`

  The optional `result_type` parameter accepts a constant and determines how the returned array will be indexed. Using `SQLITE_ASSOC` will return only associative indices (named fields) while `SQLITE_NUM` will return only numerical indices (ordinal field numbers). `SQLITE_BOTH` will return both associative and numerical indices. `SQLITE_BOTH` is the default for this function.

`decode_binary`

  When the `decode_binary` parameter is set to `TRUE` (the default), PHP will decode the binary encoding it applied to the data if it was encoded using the sqlite_escape_string(). You should normally leave this value at its default, unless you are interoperating with databases created by other sqlite capable applications.

### Return Values

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.

The column names returned by `SQLITE_ASSOC` and `SQLITE_BOTH` will be case-folded according to the value of the sqlite.assoc_case configuration option.

### Examples

Example #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'];
}
?>`

Example #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'];
}
?>`

### See Also

- sqlite_fetch_array() - Fetches the next row from a result set as an array