# PDOStatement->columnCount()

(PHP 5 >= 5.1.0, PECL pdo:0.2-1.0.3)

PDOStatement->columnCount() — Returns the number of columns in the result set

### Description

PDOStatement
int columnCount ( void )

Use PDOStatement->columnCount() to return the number of columns in the result set represented by the PDOStatement object.

If the PDOStatement object was returned from PDO->query(), the column count is immediately available.

If the PDOStatement object was returned from PDO->prepare(), an accurate column count will not be available until you invoke PDOStatement->execute().

### Return Values

Returns the number of columns in the result set represented by the PDOStatement object. If there is no result set, PDOStatement->columnCount() returns 0.

### Examples

Example#1 Counting columns

This example demonstrates how PDOStatement->columnCount() operates with and without a result set.

`<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
/* Count the number of columns in the (non-existent) result set */
$colcount = $sth->columnCount();
print("Before execute(), result set has $colcount columns (should be 0)\n");
$sth->execute();
/* Count the number of columns in the result set */
$colcount = $sth->columnCount();
print("After execute(), result set has $colcount columns (should be 2)\n");
?>`

The above example will output:

    Before execute(), result set has 0 columns (should be 0)
    After execute(), result set has 2 columns (should be 2)

### See Also

- PDO->prepare()
- PDOStatement->execute()
- PDOStatement->rowCount()