PDOStatement::getColumnMeta — 傳回結果集中一列的元資料(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)
array PDOStatement::getColumnMeta ( int $column )
檢索一個在結果集中以0開始索引的列的元資料作為一個關聯數組。
注意:此函數是實驗性的。此函數的表象,包括名稱及其相關文件都可能在未來的PHP 發布版本中未通知就被修改。使用本函數風險自擔。
注意:並非所有PDO 驅動程式都支援PDOStatement::getColumnMeta()。
column結果集中以0開始索引的欄位。
傳回一個關聯數組,它包含了下列表示一個單獨列的元資料的值:
名稱 | 值 |
---|---|
native_type | 用於表示列值的PHP 原生類型。 |
driver:decl_type | 在資料庫中用來表示列值的SQL 類型。如果結果集中的欄位是函數的結果,則該值不能被PDOStatement::getColumnMeta()傳回。 |
flags | 任何設定於此列的標記。 |
name | 透過資料庫傳回的列名。 |
table | 透過資料庫傳回的該列的表名 |
len | 該列的長度。除浮點小數外通常為-1 |
precision | 該列的數值精度。除浮點小數外通常為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)}