PDOStatement::getColumnMeta
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)
}

PHP PDO 參考手冊