(PHP 4, PHP 5, PECL mysql:1.0)

mysql_fetch_field — Возвращает информацию о колонке из результата запроса в виде объекта.

Описание

object mysql_fetch_field ( resource $result [, int $field_offset] )

Возвращает объект, содержащий информацию о колонке.

mysql_fetch_field() может использоваться для получения информации о колонках конкретного запроса. Если смещение не указано, функция возвращает информацию о первой колонке, которая ещё не была обработана функцией mysql_fetch_field().

Свойства объекта:

  • name - название колонки
  • table - название таблицы, которой принадлежит колонка
  • max_length - максимальная длинна содержания
  • not_null - 1, если колонка не может быть равна NULL
  • primary_key - 1, если колонка -- первичный индекс
  • unique_key - 1, если колона -- уникальный индекс
  • multiple_key - 1, если колонка -- не уникальный индекс
  • numeric - 1, если колонка численная
  • blob - 1, если колонка -- BLOB
  • type - тип колонки
  • unsigned - 1, если колонка строго положительная (unsigned)
  • zerofill - 1, если колонка заполняется нулями (zero-filled)

Замечание: Имена полей, возвращаемые этой функцией, регистро-зависимы.

 

Пример использования mysql_fetch_field()

<?php
mysql_connect
('localhost:3306', $user, $password)
or die(
"Could not connect: " . mysql_error());
mysql_select_db("database");
$result = mysql_query("select * from table")
or die(
"Query failed: " . mysql_error());
/* получаем данные о колонке */
$i = 0;
while (
$i < mysql_num_fields($result)) {
echo
"Information for column $i:<br />\n";
$meta = mysql_fetch_field($result, $i);
if (!
$meta) {
echo
"No information available<br />\n";
}
echo
"<pre>
blob:         $meta->blob
max_length:   $meta->max_length
multiple_key: $meta->multiple_key
name:         $meta->name
not_null:     $meta->not_null
numeric:      $meta->numeric
primary_key:  $meta->primary_key
table:        $meta->table
type:         $meta->type
unique_key:   $meta->unique_key
unsigned:     $meta->unsigned
zerofill:     $meta->zerofill
</pre>"
;
$i++;
}
mysql_free_result($result);
?>

См. также mysql_field_seek().