PDOStatement::getColumnMeta
(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)
Returns metadata for a column in a result set
Description
Retrieves the metadata for a 0-indexed column in a result set as an associative array.
Some drivers may not implement PDOStatement::getColumnMeta, as it is optional. However, all PDO drivers documented in the manual implement this function.
Parameters
columnThe 0-indexed column in the result set.
Return Values
Returns an associative array containing the following values representing the metadata for a single column:
| Name | Value |
|---|---|
native_type | The PHP native type used to represent the column value. |
driver:decl_type | The SQL type used to represent the column value in the database. If the column in the result set is the result of a function, this value is not returned by PDOStatement::getColumnMeta. |
flags | Any flags set for this column. |
name | The name of this column as returned by the database. |
table | The name of this column's table as returned by the database. |
len | The length of this column. Normally -1 for types other than floating point decimals. |
precision | The numeric precision of this column. Normally 0 for types other than floating point decimals. |
pdo_type | The type of this column as represented by the PDO::PARAM_* constants. |
Returns false if the requested column does not exist in the result set, or if no result set exists.
Examples
Retrieving column metadata
The following example shows the results of retrieving the metadata for a single column generated by a function (COUNT) in a PDO_SQLITE driver.
<?php
$select = $DB->query('SELECT COUNT(*) FROM fruit');
$meta = $select->getColumnMeta(0);
var_dump($meta);
?>The above example will output:
array(6) {
["native_type"]=>
string(7) "integer"
["flags"]=>
array(0) {
}
["name"]=>
string(8) "COUNT(*)"
["len"]=>
int(-1)
["precision"]=>
int(0)
["pdo_type"]=>
int(2)
}See Also
PDOStatement::columnCountPDOStatement::rowCount