ScotlandPHP

PDOStatement::columnCount

(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.2.0)

PDOStatement::columnCount Возвращает количество столбцов в результирующем наборе

Описание

public int PDOStatement::columnCount ( void )

Используйте PDOStatement::columnCount(), чтобы узнать количество столбцов в результирующем наборе, который представляет объект PDOStatement.

Если объект PDOStatement был возвращен из метода PDO::query(), число столбцов можно узнать сразу же.

Если объект PDOStatement был возвращен из метода PDO::prepare(), точное количество столбцов можно будет узнать только после запуска метода PDOStatement::execute().

Возвращаемые значения

Возвращает количество столбцов в результирующем наборе запроса PDOStatement, даже если он пуст. Если результирующего набора нет, PDOStatement::columnCount() возвращает 0.

Примеры

Пример #1 Подсчет столбцов

В этом примере показано, как PDOStatement::columnCount() работает в случае наличия и отсутствия результирующего набора.

<?php
$dbh 
= new PDO('odbc:sample''db2inst1''ibmdb2');

$sth $dbh->prepare("SELECT name, colour FROM fruit");

/* Подсчет количества столбцов в (несуществующем) результирующем наборе */
$colcount $sth->columnCount();
print(
"Перед вызовом execute(), в результирующем наборе $colcount столбцов (должно быть 0)\n");

$sth->execute();

/* Подсчет количества столбцов в результирующем наборе */
$colcount $sth->columnCount();
print(
"После вызова execute(), в результирующем наборе $colcount столбцов (должно быть 2)\n");

?>

Результат выполнения данного примера:

Перед вызовом execute(), в результирующем наборе 0 столбцов (должно быть 0)
После вызова execute(), в результирующем наборе 2 столбцов (должно быть 2)

Смотрите также

  • PDO::prepare() - Подготавливает запрос к выполнению и возвращает ассоциированный с этим запросом объект
  • PDOStatement::execute() - Запускает подготовленный запрос на выполнение
  • PDOStatement::rowCount() - Возвращает количество строк, модифицированных последним SQL запросом

add a note add a note

User Contributed Notes 1 note

up
1
756567406 at qq dot com
10 months ago
When you use query method, You'll get count right away

<?php
$dbh
= new PDO('odbc:sample', 'db2inst1', 'ibmdb2');

$sth = $dbh->query("SELECT name, colour FROM fruit");
$count = $sth->columnCount();

echo
'query count is '.$count;

?>
To Top