PHP PDOStatement::getColumnMeta讲解

时间:2022-08-28 21:35:06

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)
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。