mysqli_result::fetch_field_direct

mysqli_fetch_field_direct

(PHP 5, PHP 7, PHP 8)

mysqli_result::fetch_field_direct -- mysqli_fetch_field_directПолучает метаданные конкретного поля

Описание

Объектно-ориентированный стиль

publicmysqli_result::fetch_field_direct(int$index): object|false

Процедурный стиль

mysqli_fetch_field_direct(mysqli_result$result, int$index): object|false

Метод возвращает информацию о столбце результирующего набора в виде объекта.

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

result

Только для процедурного стиля: объект mysqli_result, который вернула функция mysqli_query(), mysqli_store_result(), mysqli_use_result() или mysqli_stmt_get_result().

index

Номер поля. Число в диапазоне от 0 до количество полей - 1.

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

Метод возвращает объект, который содержит определение поля, или false, если поле с номером, который задали для параметра index, недоступно.

Свойства объекта
СвойствоОписание
nameИмя столбца
orgnameИсходное имя столбца, если указали псевдоним
tableИмя таблицы, которой принадлежит столбец (если не вычислено)
orgtableИсходное имя таблицы, если указали псевдоним
defНеиспользуемый. Всегда пустая строка
dbИмя базы данных
catalogНеиспользуемый. Всегда «def»
max_length Максимальная ширина поля результирующего набора. Начиная с PHP 8.1 это значение всегда равно 0
length Ширина поля в байтах. Для строковых столбцов значение длины зависит от кодировки соединения. Например, если кодировка — latin1, однобайтовый набор символов, значение длины для запроса SELECT 'abc' равно 3. Если кодировка — utf8mb4, многобайтовый набор символов, в котором символы занимают до 4 байтов, значение длины равно 12
charsetnrНомер кодировки для поля
flagsЦелое число, которое представляет битовые флаги для поля
typeТип данных поля
decimalsКоличество десятичных знаков для числовых полей и точность долей секунды для временных полей

Примеры

Пример #1 Объектно-ориентированный стиль

<?php

$mysqli
= new mysqli("localhost", "my_user", "my_password", "world");


if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";

if (
$result = $mysqli->query($query)) {

$finfo = $result->fetch_field_direct(1);

printf("Имя: %s\n", $finfo->name);
printf("Таблица: %s\n", $finfo->table);
printf("Макс. длина: %d\n", $finfo->max_length);
printf("Флаги: %d\n", $finfo->flags);
printf("Тип: %d\n\n", $finfo->type);

$result->close();
}


$mysqli->close();

?>

Пример #2 Процедурный стиль

<?php

$link
= mysqli_connect("localhost", "my_user", "my_password", "world");


if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";

if (
$result = mysqli_query($link, $query)) {


$finfo = mysqli_fetch_field_direct($result, 1);

printf("Имя: %s\n", $finfo->name);
printf("Таблица: %s\n", $finfo->table);
printf("Макс. длина: %d\n", $finfo->max_length);
printf("Флаги: %d\n", $finfo->flags);
printf("Тип: %d\n\n", $finfo->type);

mysqli_free_result($result);
}


mysqli_close($link);

?>

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

Имя: SurfaceArea Таблица: Country Макс. длина: 10 Флаги: 32769 Тип: 4

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

  • mysqli_num_fields() - Получает количество полей в наборе результатов
  • mysqli_fetch_field() - Возвращает следующее поле результирующего набора
  • mysqli_fetch_fields() - Возвращает массив объектов, которые представляют поля результирующего набора
To Top