PDOStatement::getColumnMeta

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

PDOStatement::getColumnMeta Возвращает метаданные столбца в результирующей таблице

Описание

public array PDOStatement::getColumnMeta ( int $column )
Внимание

Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.

Возвращает метаданные столбца результирующей таблицы в виде ассоциативного массива. Индексация столбцов начинается с 0.

Внимание

Не все PDO драйверы поддерживают PDOStatement::getColumnMeta().

Список параметров

column

Индекс (начиная с 0) столбца результирующего набора.

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

Возвращает ассоциативный массив, содержащий следующие значения метаданных:

Метаданные столбца
Имя Значение
native_type Внутренний тип PHP, в котором будет представлено значение столбца.
driver:decl_type SQL тип в котором значение столбца хранится в базе данных. Если значение столбца результирующей таблицы было возвращено из функции, PDOStatement::getColumnMeta() не будет определять этот тип.
flags Какие-либо флаги, установленные для столбца.
name Имя столбца в том виде, в котором его вернула СУБД.
table Имя таблицы базы данных, содержащей этот столбец.
len Размер поля столбца. Как правило, для типов, отличных от чисел с плавающей запятой, это значение равно -1.
precision Числовая точность значений этого поля. Как правило, для типов, отличных от чисел с плавающей запятой, это значение равно 0.
pdo_type PDO тип значения столбца в виде одной из констант PDO::PARAM_*.

Возвращает FALSE в случаях, когда указанного столбца нет в результирующей таблице, а также если не существует самого результирующего набора.

Список изменений

Версия Описание
5.2.3 Поле table

Примеры

Пример #1 Извлечение метаданных столбца

В следующем примере показаны результаты извлечения метаданных одного столбца сгенерированного функцией COUNT драйвера PDO_SQLITE.

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

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

  • PDOStatement::columnCount() - Возвращает количество столбцов в результирующем наборе
  • PDOStatement::rowCount() - Возвращает количество строк, модифицированных последним SQL запросом