CakeFest 2024: The Official CakePHP Conference

mysqli_result::fetch_array

mysqli_fetch_array

(PHP 5, PHP 7, PHP 8)

mysqli_result::fetch_array -- mysqli_fetch_array Выбирает следующую строку из набора результатов и помещает её в ассоциативный массив, обычный массив или в оба

Описание

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

public mysqli_result::fetch_array(int $mode = MYSQLI_BOTH): array|null|false

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

mysqli_fetch_array(mysqli_result $result, int $mode = MYSQLI_BOTH): array|null|false

Выбирает одну строку данных из набора результатов и возвращает её в виде массива. Каждый последующий вызов этой функции будет возвращать следующую строку в наборе результатов или null, если строк больше нет.

Помимо хранения данных в числовых индексах массива результатов, функция также может сохранять данные в ассоциативных индексах, используя имена полей набора результатов в качестве ключей.

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

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

Замечание: Эта функция устанавливает NULL-поля в значение null PHP.

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

result

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

mode

Этот необязательный параметр принимает значение константы, которая указывает на тип массива, в который требуется поместить данные. Возможные значения параметра: MYSQLI_ASSOC, MYSQLI_NUM или MYSQLI_BOTH.

При использовании константы MYSQLI_ASSOC функция будет вести себя идентично mysqli_fetch_assoc(), а при MYSQLI_NUM идентично функции mysqli_fetch_row(). При задании MYSQLI_BOTH функция создаст один массив, включающий атрибуты обоих вариантов.

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

Возвращает массив, представляющий выбранную строку, null, если в наборе результатов больше нет строк или false, если возникла ошибка.

Примеры

Пример #1 Пример использования mysqli_result::fetch_array()

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

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

$query = "SELECT Name, CountryCode FROM City ORDER BY ID LIMIT 3";
$result = $mysqli->query($query);

/* числовой массив */
$row = $result->fetch_array(MYSQLI_NUM);
printf("%s (%s)\n", $row[0], $row[1]);

/* ассоциативный массив */
$row = $result->fetch_array(MYSQLI_ASSOC);
printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);

/* ассоциативный и числовой массивы */
$row = $result->fetch_array(MYSQLI_BOTH);
printf("%s (%s)\n", $row[0], $row["CountryCode"]);

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

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = mysqli_connect("localhost", "my_user", "my_password", "world");

$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = mysqli_query($mysqli, $query);

/* числовой массив */
$row = mysqli_fetch_array($result, MYSQLI_NUM);
printf("%s (%s)\n", $row[0], $row[1]);

/* ассоциативный массив */
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);

/* ассоциативный и числовой массивы */
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
printf("%s (%s)\n", $row[0], $row["CountryCode"]);

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

Kabul (AFG)
Qandahar (AFG)
Herat (AFG)

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

  • mysqli_fetch_assoc() - Выбирает следующую строку из набора результатов и помещает её в ассоциативный массив
  • mysqli_fetch_column() - Получает один столбец из следующей строки набора результатов
  • mysqli_fetch_row() - Выбирает следующую строку из набора результатов и помещает её в обычный массив
  • mysqli_fetch_object() - Выбирает следующую строку из набора результатов в виде объекта
  • mysqli_query() - Выполняет запрос к базе данных
  • mysqli_data_seek() - Перемещает указатель результата на выбранную строку

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top