PDOStatement::getColumnMeta — 結果セット内の列のメタデータを返します (PHP 5 >= 5.1.0、PECL pdo >= 0.2.0)
配列 PDOStatement::getColumnMeta ( int $column )
結果セット内の 0 から始まるインデックスが付けられた列のメタデータを連想配列として取得します。
注:この機能は実験的なものです。この関数の外観 (名前および関連ドキュメントを含む) は、将来の PHP リリースで予告なく変更される可能性があります。この機能は自己責任で使用してください。
注:すべての PDO ドライバーが PDOStatement::getColumnMeta() をサポートしているわけではありません。
インデックスが 0 で始まる列結果セット内の列。
単一列のメタデータを表す次の値を含む連想配列を返します。
名前 | 価値 |
---|---|
ネイティブタイプ | 列値を表すために使用される PHP ネイティブ型。 |
ドライバー:decl_type | データベース内の列値を表すために使用される SQL タイプ。結果セット内の列が関数の結果である場合、その値をPDOStatement::getColumnMeta()で返すことはできません。 |
フラグ | この列に設定されたフラグ。 |
名前 | データベースを通じて返される列名。 |
テーブル | データベースから返されるこの列のテーブル名 |
レン | 列の長さ。浮動小数点 10 進数を除き、通常は-1 |
精度 | この列の数値精度。浮動小数点 10 進数を除き、通常は0 です。 |
pdo_type | PDO::PARAM_*定数で表される列の型。 |
次の例は、PDO_SQLITE の関数 (COUNT) を使用して単一列のメタデータを取得した結果を示しています。
<?php$select = $DB->query('SELECT COUNT(*) FROM Fruit');$meta = $select->getColumnMeta(0);var_dump($meta);?>
上記の出力例は次のようになります。
array(6) { ["native_type"]=> string(7) "integer" ["flags"]=> array(0) { } ["name"]=> string(8) "COUNT(*)" [ "len"]=> int(-1) ["precision"]=> int(0) ["pdo_type"]=> int(2)}