PDOStatement::getColumnMeta
PDOStatement::getColumnMeta
(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.2.0)
PDOStatement :: getColumnMeta - 返回结果集中列的元数据
描述
public array PDOStatement::getColumnMeta ( int $column )
将检索结果集中0索引列的元数据作为关联数组。
警告
并非所有的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_ *常量表示。 |
如果请求的列未在结果集中存在,或是没有结果集存在,则返回FALSE
。
更新日志
版 | 描述 |
---|---|
5.4.0 | 添加了PDO_DBLIB驱动程序支持 |
5.2.3 | 表字段 |
示例
示例#1检索列元数据
以下示例显示了检索由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)
}
扩展内容
- PDOStatement :: columnCount() - 返回结果集里的列数
- PDOStatement :: rowCount() - 返回最后一条SQL语句影响的行数
← PDOStatement::getAttribute
PDOStatement::nextRowset →