Функция PHP mysql_fetch_field()

Определение и использование

Функция mysql_fetch_field() извлекает информацию о столбце из результатов и возвращает её в виде объекта.

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

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

Атрибуты возвращаемого объекта:

  • name - имя столбца
  • table - имя таблицы, в которой находится столбец
  • max_length - максимальная длина столбца
  • not_null - 1, если столбец не может быть NULL
  • primary_key - 1, если это столбец с PRIMARY KEY
  • unique_key - 1, если это столбец с уникальным ключом
  • multiple_key - 1, если это столбец с неуникальным ключом
  • numeric - 1, если это столбец с числовыми данными
  • blob - 1,如果该列是 BLOB
  • blob - 1, если столбец является BLOB
  • type - тип столбца
  • unsigned - 1, если столбец является unsigned

zerofill - 1, если столбец является zero-filled

Синтаксисdatamysql_fetch_field(field_offset)
, Описание
data Обязателен. Используемый указатель данных. Этот указатель возвращается из mysql_query().
field_offset Обязателен. Определяет, с какого поля начинать. 0 указывает на первый поле. Если не установлено,则在озвращает следующий поле.

Подсказки и комментарии

Комментарий:Имя возвращаемого поля чувствительно к регистру.

Пример

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con)
  {
  die('Не удалось подключиться: ' . mysql_error());
  }
$db_selected = mysql_select_db("test_db",$con);
$sql = "SELECT * from Person";
$result = mysql_query($sql,$con);
while ($property = mysql_fetch_field($result))
  {
  echo "Имя поля: " . $property->name . "<br />";
  echo "Имя таблицы: " . $property->table . "<br />";
  echo "Значение по умолчанию: " . $property->def . "<br />";
  echo "Максимальная длина: " . $property->max_length . "<br />";
  echo "Не NULL: " . $property->not_null . "<br />"; 
  echo "Основной ключ: " . $property->primary_key . "<br />";
  echo "Уникальный ключ: " . $property->unique_key . "<br />"; 
  echo "Множественный ключ: " . $property->multiple_key . "<br />";
  echo "Numeric Field: " . $property->numeric . "<br />";
  echo "BLOB: " . $property->blob . "<br />";
  echo "Field Type: " . $property->type . "<br />";
  echo "Unsigned: " . $property->unsigned . "<br />";
  echo "Zero-filled: " . $property->zerofill . "<br /><br />"; 
  }
mysql_close($con);
?>

Вывод:

Field name: LastName
Table name: Person
Default value: 
Max length: 8
Not NULL: 0
Primary Key: 0
Unique Key: 0
Mutliple Key: 0
Numeric Field: 0
BLOB: 0
Field Type: string
Unsigned: 0
Zero-filled: 0
Field name: FirstName
Table name: Person
Default value: 
Max length: 7
Not NULL: 0
Primary Key: 0
Unique Key: 0
Mutliple Key: 0
Numeric Field: 0
BLOB: 0
Field Type: string
Unsigned: 0
Zero-filled: 0
Field name: City
Table name: Person
Default value: 
Max length: 9
Not NULL: 0
Primary Key: 0
Unique Key: 0
Mutliple Key: 0
Numeric Field: 0
BLOB: 0
Field Type: string
Unsigned: 0
Zero-filled: 0
Field name: Age
Table name: Person
Default value: 
Max length: 2
Not NULL: 0
Primary Key: 0
Unique Key: 0
Mutliple Key: 0
Numeric Field: 1
BLOB: 0
Field Type: int
Unsigned: 0
Zero-filled: 0