sqlite_fetch_column_types
SQLiteDatabase::fetchColumnTypes
(PHP 5 < 5.4.0)
sqlite_fetch_column_types -- SQLiteDatabase::fetchColumnTypes — 特定のテーブルからカラム型の配列を返す
説明
$table_name
, resource $dbhandle
[, int $result_type = SQLITE_ASSOC
] ) : arrayオブジェクト指向型 (メソッド):
$table_name
[, int $result_type = SQLITE_ASSOC
] ) : array
sqlite_fetch_column_types() は、
指定されたテーブル table_name
からカラムのデータ型の配列を返します。
パラメータ
-
table_name -
問い合わせるテーブル名
-
dbhandle -
SQLite データベースリソース。手続きに従って、 sqlite_open() から返されます。 このパラメータは、 オブジェクト指向言語型メソッドを使用する場合は不要です。
-
result_type -
オプションパラメータ
result_typeは定数を受け付け、 返される配列をどの様にインデックス付けするかを決定します。SQLITE_ASSOCを使用すると連想インデックス (名前付けられたフィールド) のみを返し、SQLITE_NUMの場合は数値インデックス (順序を表すフィールド番号) のみを返します。SQLITE_ASSOCがこの関数のデフォルトです。
返り値
カラムのデータ型の配列を返します。エラー時は FALSE を返します。
SQLITE_ASSOC および SQLITE_BOTH で
返されるカラム名は、設定オプション
sqlite.assoc_case の値に基づき、
大文字小文字が変換されます。
変更履歴
| バージョン | 説明 |
|---|---|
| 5.1.0 | result_type が追加されました。 |
例
例1 手続き型言語スタイルでの例
<?php
$db = sqlite_open('mysqlitedb');
sqlite_query($db, 'CREATE TABLE foo (bar varchar(10), arf text)');
$cols = sqlite_fetch_column_types('foo', $db, SQLITE_ASSOC);
foreach ($cols as $column => $type) {
echo "Column: $column Type: $type\n";
}
?>
例2 オブジェクト指向言語型スタイルでの例
<?php
$db = new SQLiteDatabase('mysqlitedb');
$db->query('CREATE TABLE foo (bar varchar(10), arf text)');
$cols = $db->fetchColumnTypes('foo', SQLITE_ASSOC);
foreach ($cols as $column => $type) {
echo "Column: $column Type: $type\n";
}
?>
上の例の出力は以下となります。
Column: bar Type: VARCHAR Column: arf Type: TEXT