sqlite_array_query
SQLiteDatabase->arrayQuery
(No version information available, might be only in CVS)
SQLiteDatabase->arrayQuery — Végrehajt egy SQL kérés az adott adatbázison, az eredményt tömbben visszaadva
LeÃrás
Objektum orientált stÃlusban (eljárásként):
Az sqlite_array_query() alkalmazása megfelel egy sqlite_query(), majd egy ezt követÅ‘ ciklikus sqlite_fetch_array() hÃvássorozatnak, amely egy tömböt épÃt fel. A visszaadott tömb minden egyes sora egy, a rekordot tartalmazó tömböt tartalmaz. A következÅ‘ kódrészlet is azt példázza, mit is cserélhetünk le e sokszor zzel az egy függvényhÃvással. Az sqlite_array_query() hÃvása jóval gyorsabb eredményt hoz, mint a lenti kódrészlet.
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.
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.
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.
Example#1 sqlite_array_query() sajátkezűleg
<?php
$q = sqlite_query($dbhandle, "SELECT name, email FROM users LIMIT 25");
$rows = array();
while ($r = sqlite_fetch_array($q)) {
$rows[] = $r;
}
?>
Example#2 sqlite_array_query() példa
<?php
$dbhandle = sqlite_open('sqlitedb');
$result = sqlite_array_query($dbhandle, 'SELECT name, email FROM users LIMIT 25', SQLITE_ASSOC);
foreach ($result as $entry) {
echo 'Név: ' . $entry['name'] . ' E-mail: ' . $entry['email'];
}
/* OO Példa */
$dbhandle = new SQLiteDatabase('sqlitedb');
$result = $dbhandle->arrayQuery('SELECT name, email FROM users LIMIT 25', SQLITE_ASSOC);
foreach ($result as $entry) {
echo "Név: $entry[name] E-mail: $entry[email]";
?>
Az sqlite_array_query() leginkább a 45 vagy kevesebb sort tartalmazó eredménylistákhoz nyújt hatékony segÃtséget. Ha ennél több rekordot szeretél megmozgatni, érdemesebb inkább saját kódot Ãrni az adatsorok szekvenciális lekérésére, kombinálva az sqlite_unbuffered_query() függvénnyel. Ez a módszer ilyenkor sokkal erÅ‘forrástakarékosabb.
Note: Two alternative syntaxes are supported for compatibility with other database extensions (such as MySQL). The preferred form is the first, where the dbhandle parameter is the first parameter to the function.
Lásd még: sqlite_query(), sqlite_fetch_array() és sqlite_fetch_string().