While working with SQLite using its object-oriented mode, I found need to display a column/field name without knowing what it was in advance. I couldn't find any examples on the Internet, just this document. So, for anyone who happens to need to do this, here's an example.
<?php
$db = "db/database.sqlite";
// create new database (OO interface)
$dbo = new SQLiteDatabase("$db");
// create table foo and insert sample data
$dbo->query("
CREATE TABLE foo(id INTEGER PRIMARY KEY, name CHAR(255));
INSERT INTO foo (name) VALUES('Ilia1');
INSERT INTO foo (name) VALUES('Ilia2');
INSERT INTO foo (name) VALUES('Ilia3');
");
$query = "SELECT * FROM foo;";
$result = $dbo->query($query) or die("Error in query");
echo "
<table border='1' cellpadding='10'>
<tr>
<td>".$result->fieldName(0)."</td>
<td>".$result->fieldName(1)."</td>
</tr>";
// iterate through the retrieved rows
while ($result->valid()) {
// fetch current row
$row = $result->current();
echo "
<tr>
<td>".$row[0]."</td>
<td>".$row[1]."</td>
</tr>";
// proceed to next row
$result->next();
}
echo "</table>";
?>
sqlite_field_name
SQLiteResult->fieldName
SQLiteUnbuffered->fieldName
(PHP 5, PECL sqlite >= 1.0.0)
sqlite_field_name -- SQLiteResult->fieldName -- SQLiteUnbuffered->fieldName — 特定のフィールドの名前を返す
説明
string sqlite_field_name
( resource $result
, int $field_index
)
Object oriented style (method):
SQLiteResult
string fieldName
( int $field_index
)
SQLiteUnbuffered
string fieldName
( int $field_index
)
Given the ordinal column number, field_index , sqlite_field_name() returns the name of that field in the result set result .
パラメータ
- result
-
SQLite 結果リソース。 このパラメータは、 オブジェクト指向言語型メソッドを使用する場合は不要です。
- field_index
-
結果セットにおけるオリジナルのカラム番号
返り値
与えられたオリジナルのカラム番号での SQLite 結果セット中のフィールド名を返します。エラーの場合は、FALSE を返します。
SQLITE_ASSOC および SQLITE_BOTH で 返されるカラム名は、設定オプション sqlite.assoc_case の値に基づき、 大文字小文字が変換されます。
sqlite_field_name
rrf5000 at psu dot edu
22-Jun-2007 05:03
22-Jun-2007 05:03
