(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)
sqlite_fetch_all -- SQLiteResult::fetchAll -- SQLiteUnbuffered::fetchAll — Holt sich alle Reihen eines Abfrageergebnisses und liefert sie als Array im Array zurück
$result
[,
int $result_type
= SQLITE_BOTH
[,
bool $decode_binary
= TRUE
]] ) : arrayObjektorientierter Stil (Methode):
$result_type
= SQLITE_BOTH
[,
bool $decode_binary
= TRUE
]] ) : array$result_type
= SQLITE_BOTH
[,
bool $decode_binary
= TRUE
]] ) : array
sqlite_fetch_all() liefert ein Array des gesamten
Abfrageergebnisses von der Ressource result
zurück.
Es ähnelt dem Aufruf von sqlite_query() (oder
sqlite_unbuffered_query()) und danach
sqlite_fetch_array()-Aufrufen für jede einzelne Reihe des
Abfrageergebnisses.
result
Die Ressource des SQLite-Ergebnisses. Der Parameter wird bei der objektorientierten Notation nicht benötigt.
result_type
Der optionale Parameter
Ergebnis_Typ
akzeptiert eine Konstante und bestimmt,
wie das zurückgegebene Array indiziert wird. Während mit
SQLITE_ASSOC
nur assoziative Indizes (Namensfelder)
zurückgegeben werden, werden mit SQLITE_NUM
nur
numerische Indizes (geordnete Feldnummern) zurückgegeben.
SQLITE_BOTH
gibt sowohl assoziative als auch numerische
Indizes zurück. SQLITE_BOTH
ist die
Standardeinstellung.
decode_binary
Falls der Parameter
decode_binary
auf TRUE
gesetzt ist (das ist die
Standardeinstellung), dekodiert PHP die Binärkodierung, die bei Verwendung von
sqlite_escape_string() auf die Daten angewendet wird.
Solange Sie die Daten nicht mit anderen SQLite-Fähigen Applikationen teilen,
sollten Sie diesen Wert in der Standardeinstellung lassen.
Liefert ein Array mit den übrigen Reihen des Abfrageergebnisses. Wenn es direkt nach sqlite_query() aufgerufen wird, werden alle Reihen zurückgegeben. Wenn es nach sqlite_fetch_array() aufgerufen wird, wird der Rest zurückgegeben. Wenn es keine Reihen in einem Abfrageergebnis mehr gibt, liefert es ein leeres Array.
Die Groß- und Kleinschreibung der
Spaltennamen, die von SQLITE_ASSOC
und
SQLITE_BOTH
zurückgegeben werden, wird entsprechend der
Konfigurationsdirektive sqlite.assoc_case geändert.
Beispiel #1 Prozedurales Beispiel
<?php
$dbhandle = sqlite_open('sqlitedb');
$query = sqlite_query($dbhandle, 'SELECT name, email FROM benutzer LIMIT 25');
$result = sqlite_fetch_all($query, SQLITE_ASSOC);
foreach ($result as $entry) {
echo 'Name: ' . $entry['name'] . ' E-Mail: ' . $entry['email'];
}
?>
Beispiel #2 Objektorientiertes Beispiel
<?php
$dbhandle = new SQLiteDatabase('sqlitedb');
$query = $dbhandle->query('SELECT name, email FROM benutzer LIMIT 25'); // gepuffertes Abfrageergebnis
$query = $dbhandle->unbufferedQuery('SELECT name, email FROM benutzer LIMIT 25'); // ungepuffertes Abfrageergebnis
$result = $query->fetchAll(SQLITE_ASSOC);
foreach ($result as $entry) {
echo 'Name: ' . $entry['name'] . ' E-Mail: ' . $entry['email'];
}
?>