(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)
PDOStatement::getColumnMeta — 返回結果集中一列的元數據
$column
): array此函數是實(shí)驗性的。此函數的表象,包括名稱(chēng)及其相關(guān)文檔都可能在未來(lái)的 PHP 發(fā)布版本中未通知就被修改。使用本函數風(fēng)險自擔。
檢索一個(gè)在結果集中以0開(kāi)始索引的列的元數據作為一個(gè)關(guān)聯(lián)數組。
并非所有 PDO 驅動(dòng)都支持 PDOStatement::getColumnMeta()。
column
結果集中以0開(kāi)始索引的列。
返回一個(gè)關(guān)聯(lián)數組,它包含了下列表示一個(gè)單獨列的元數據的值:
名稱(chēng) | 值 |
---|---|
native_type |
用于表示列值的 PHP 原生類(lèi)型。 |
driver:decl_type |
在數據庫中用于表示列值的 SQL 類(lèi)型。如果結果集中的列是一個(gè)函數的結果,則該值不能被 PDOStatement::getColumnMeta() 返回。 |
flags |
任何設置于此列的標記。 |
name |
通過(guò)數據庫返回的列名。 |
table |
通過(guò)數據庫返回的該列的表名 |
len |
該列的長(cháng)度。除浮點(diǎn)小數外通常為 -1 |
precision |
該列的數值精度。除浮點(diǎn)小數外通常為 0 。 |
pdo_type |
以 PDO::PARAM_* 常量為代表的列類(lèi)型。 |
如果結果集不存在,或者是請求的列在結果集中不存在,則返回 false
。
版本 | 說(shuō)明 |
---|---|
5.2.3 | table 字段 |
示例 #1 檢索列的元數據
下面例子展示了在一個(gè)PDO_SQLITE中,檢索一個(gè)通過(guò)函數(COUNT)生成單獨列的元數據的結果。
<?php
$select = $DB->query('SELECT COUNT(*) FROM fruit');
$meta = $select->getColumnMeta(0);
var_dump($meta);
?>
以上例程會(huì )輸出:
array(6) { ["native_type"]=> string(7) "integer" ["flags"]=> array(0) { } ["name"]=> string(8) "COUNT(*)" ["len"]=> int(-1) ["precision"]=> int(0) ["pdo_type"]=> int(2) }