(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)
sqlite_fetch_array -- SQLiteResult::fetch -- SQLiteUnbuffered::fetch — 結果セットから次のレコードを配列として取得する
$result
[, int $result_type
= SQLITE_BOTH
[, bool $decode_binary
= true
]] )オブジェクト指向型 (メソッド):
$result_type
= SQLITE_BOTH
[, bool $decode_binary
= true
]] )$result_type
= SQLITE_BOTH
[, bool $decode_binary
= true
]] )
指定した結果ハンドル result
から次のレコードを取得
します。レコードがもうない場合は FALSE
を返し、それ以外は
レコードデータを含む連想配列を返します。
result
SQLite 結果リソース。 このパラメータは、 オブジェクト指向言語型メソッドを使用する場合は不要です。
result_type
オプションの result_type
パラメータには定数を指定でき、返される配列の添字を定義します。
SQLITE_ASSOC
を用いると、連想配列の添字(名前フィールド)のみが
返されます。一方、SQLITE_NUM
は、
数値の添字(フィールド番号)のみを返します。SQLITE_BOTH
は、
連想配列の添字と数値の添字の両方を返します。
SQLITE_BOTH
がこの関数のデフォルトです。
decode_binary
decode_binary
パラメータが TRUE
(デフォルト)に
設定された場合、PHP はバイナリエンコーディングをデコードします。
これは、 sqlite_escape_string() によりエンコードされたデータに
適用されます。sqlite をサポートする他のアプリケーションにより
作成されたデータベースを処理する時以外は、この値をデフォルトのままにしておくべきです。
結果セットの次レコードの配列を返します。
次レコードの位置が最終レコード以降の場合、FALSE
を返します。
SQLITE_ASSOC
および SQLITE_BOTH
で
返されるカラム名は、設定オプション
sqlite.assoc_case の値に基づき、
大文字小文字が変換されます。
例1 手続き型言語スタイルでの例
<?php
$dbhandle = sqlite_open('sqlitedb');
$query = sqlite_query($dbhandle, 'SELECT name, email FROM users LIMIT 25');
while ($entry = sqlite_fetch_array($query, SQLITE_ASSOC)) {
echo 'Name: ' . $entry['name'] . ' E-mail: ' . $entry['email'];
}
?>
例2 オブジェクト指向言語型スタイルでの例
<?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
while ($entry = $query->fetch(SQLITE_ASSOC)) {
echo 'Name: ' . $entry['name'] . ' E-mail: ' . $entry['email'];
}
?>