Source of: /manual/en/pdostatement.getcolumnmeta.php
<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/class.pdostatement.inc";
$setup = array (
'home' =>
array (
0 => 'index.php',
1 => 'PHP Manual',
),
'head' =>
array (
0 => 'UTF-8',
1 => 'en',
),
'this' =>
array (
0 => 'pdostatement.getcolumnmeta.php',
1 => 'PDOStatement->getColumnMeta',
),
'up' =>
array (
0 => 'class.pdostatement.php',
1 => 'The PDOStatement class',
),
'prev' =>
array (
0 => 'pdostatement.getattribute.php',
1 => 'PDOStatement->getAttribute',
),
'next' =>
array (
0 => 'pdostatement.nextrowset.php',
1 => 'PDOStatement->nextRowset',
),
);
$setup["toc"] = $TOC;
$setup["parents"] = $PARENTS;
manual_setup($setup);
manual_header();
?>
<div id="pdostatement.getcolumnmeta" class="refentry">
<div class="refnamediv">
<h1 class="refname">PDOStatement->getColumnMeta</h1>
<p class="verinfo">(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)</p><p class="refpurpose"><span class="refname">PDOStatement->getColumnMeta</span> — <span class="dc-title">
Returns metadata for a column in a result set
</span></p>
</div>
<a name="pdostatement.getcolumnmeta.description"></a><div class="refsect1 description">
<h3 class="title">Description</h3>
<div class="methodsynopsis dc-description">
<span class="type">array</span> <span class="methodname"><b>PDOStatement::getColumnMeta</b></span>
( <span class="methodparam"><span class="type">int</span> <tt class="parameter">$column</tt></span>
)</div>
<div class="warning"><b class="warning">Warning</b><p class="simpara">This function is
<em class="emphasis">EXPERIMENTAL</em>. The behaviour of this function, its name, and
surrounding documentation may change without notice in a future release of PHP.
This function should be used at your own risk.
</p></div>
<p class="para">
Retrieves the metadata for a 0-indexed column in a result set as an
associative array.
</p>
<div class="warning"><b class="warning">Warning</b>
<p class="simpara">
Not all PDO drivers support
<b>PDOStatement::getColumnMeta()</b>.
</p>
</div>
</div>
<a name="pdostatement.getcolumnmeta.parameters"></a><div class="refsect1 parameters">
<h3 class="title">Parameters</h3>
<p class="para">
</p><dl>
<dt class="varlistentry">
<span class="term"><i><tt class="parameter">column</tt></i>
</span>
</dt><dd class="listitem">
<p class="para">
The 0-indexed column in the result set.
</p>
</dd>
</dl>
<p>
</p>
</div>
<a name="pdostatement.getcolumnmeta.returnvalues"></a><div class="refsect1 returnvalues">
<h3 class="title">Return Values</h3>
<p class="para">
Returns an associative array containing the following values representing
the metadata for a single column:
</p>
<table class="doctable table">
<caption><b>Column metadata</b></caption>
<col align="left" />
<col align="left" />
<thead valign="middle">
<tr valign="middle">
<th>Name</th>
<th>Value</th>
</tr>
</thead>
<tbody valign="middle" class="tbody">
<tr valign="middle">
<td align="left"><i>native_type</i></td>
<td align="left">The PHP native type used to represent the column value.</td>
</tr>
<tr valign="middle">
<td align="left"><i>driver:decl_type</i></td>
<td align="left">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 <b>PDOStatement::getColumnMeta()</b>.
</td>
</tr>
<tr valign="middle">
<td align="left"><i>flags</i></td>
<td align="left">Any flags set for this column.</td>
</tr>
<tr valign="middle">
<td align="left"><i>name</i></td>
<td align="left">The name of this column as returned by the database.</td>
</tr>
<tr valign="middle">
<td align="left"><i>table</i></td>
<td align="left">The name of this column's table as returned by the database.</td>
</tr>
<tr valign="middle">
<td align="left"><i>len</i></td>
<td align="left">The length of this column. Normally <i>-1</i> for
types other than floating point decimals.</td>
</tr>
<tr valign="middle">
<td align="left"><i>precision</i></td>
<td align="left">The numeric precision of this column. Normally
<i>0</i> for types other than floating point
decimals.</td>
</tr>
<tr valign="middle">
<td align="left"><i>pdo_type</i></td>
<td align="left">The type of this column as represented by the
<i>PDO::PARAM_*</i> constants.</td>
</tr>
</tbody>
</table>
<p class="para">
Returns <b><tt class="constant">FALSE</tt></b> if the requested column does not exist in the result set,
or if no result set exists.
</p>
</div>
<a name="pdostatement.getcolumnmeta.changelog"></a><div class="refsect1 changelog">
<h3 class="title">Changelog</h3>
<p class="para">
</p><table class="doctable informaltable">
<thead valign="middle">
<tr valign="middle">
<th>Version</th>
<th>Description</th>
</tr>
</thead>
<tbody valign="middle" class="tbody">
<tr valign="middle">
<td align="left">5.2.3</td>
<td align="left"><i>table</i> field</td>
</tr>
</tbody>
</table>
<p>
</p>
</div>
<a name="pdostatement.getcolumnmeta.examples"></a><div class="refsect1 examples">
<h3 class="title">Examples</h3>
<p class="para">
</p><div class="example">
<p><b>Example #1 Retrieving column metadata</b></p>
<div class="example-contents para"><p>
The following example shows the results of retrieving the metadata for a
single column generated by a function (COUNT) in a PDO_SQLITE driver.
</p></div>
<div class="example-contents programlisting">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB"><?php<br />$select </span><span style="color: #007700">= </span><span style="color: #0000BB">$DB</span><span style="color: #007700">-></span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">'SELECT COUNT(*) FROM fruit'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$meta </span><span style="color: #007700">= </span><span style="color: #0000BB">$select</span><span style="color: #007700">-></span><span style="color: #0000BB">getColumnMeta</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$meta</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span>
</span>
</code></div>
</div>
<div class="example-contents para"><p>The above example will output:</p></div>
<div class="example-contents screen">
<div class="cdata"><pre>
array(6) {
["native_type"]=>
string(7) "integer"
["flags"]=>
array(0) {
}
["name"]=>
string(8) "COUNT(*)"
["len"]=>
int(-1)
["precision"]=>
int(0)
["pdo_type"]=>
int(2)
}
</pre></div>
</div>
</div><p>
</p>
</div>
<a name="pdostatement.getcolumnmeta.seealso"></a><div class="refsect1 seealso">
<h3 class="title">See Also</h3>
<p class="para">
</p><ul class="simplelist">
<li class="member"><a href="pdostatement.columncount.php" class="function" rel="rdfs-seeAlso">PDOStatement::columnCount()</a> - Returns the number of columns in the result set</li>
<li class="member"><a href="pdostatement.rowcount.php" class="function" rel="rdfs-seeAlso">PDOStatement::rowCount()</a> - Returns the number of rows affected by the last SQL statement</li>
</ul><p>
</p>
</div>
</div><?php manual_footer(); ?>