oci_fetch

(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)

oci_fetchВыбирает следующую строку из результата в буфер

Описание

oci_fetch(resource $statement): bool

Выбирает следующую строку из результата запроса во внутренний буфер, доступный с помощью oci_result() или через переменные, заранее определённые с помощью oci_define_by_name().

Смотрите oci_fetch_array() для более детальной информации о выборе данных.

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

statement

Корректный идентификатор выражения OCI8, полученный из функции oci_parse() и исполненный функцией oci_execute(), или идентификатор выражения REF CURSOR.

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

Возвращает true в случае успешного выполнения или false, если в результате statement больше нет рядов.

Примеры

Пример #1 Пример использования oci_fetch() с определёнными переменными

<?php

$conn
= oci_connect('hr', 'welcome', 'localhost/XE');
if (!
$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);

// Определение переменных ДОЛЖНО быть произведено до запуска
oci_define_by_name($stid, 'LOCATION_ID', $locid);
oci_define_by_name($stid, 'CITY', $city);

oci_execute($stid);

// С каждой выборкой переменные заполняются данными следующего ряда
while (oci_fetch($stid)) {
echo
"Идентификатор местоположения $city = $locid<br>\n";
}

// Выведет:
// Идентификатор местоположения Roma = 1000
// Идентификатор местоположения Venice = 1100

oci_free_statement($stid);
oci_close($conn);

?>

Пример #2 Пример использования oci_fetch() с oci_result()

<?php

$conn
= oci_connect('hr', 'welcome', 'localhost/XE');
if (!
$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);
oci_execute($stid);

while (
oci_fetch($stid)) {
echo
oci_result($stid, 'LOCATION_ID') . " = ";
echo
oci_result($stid, 'CITY') . "<br>\n";
}

// Выведет:
// 1000 = Roma
// 1100 = Venice

oci_free_statement($stid);
oci_close($conn);

?>

Примечания

Замечание:

Не возвращает строки для неявных результирующих наборов в Oracle Database. Используйте вместо данной функции функцию oci_fetch_array().

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

  • oci_define_by_name() - Сопоставляет переменную PHP столбцу результата запроса
  • oci_fetch_all() - Выбирает все строки из результата запроса в двумерный массив
  • oci_fetch_array() - Возвращает следующую строку из результата запроса в виде ассоциативного или нумерованного массива
  • oci_fetch_assoc() - Возвращает следующую строку из результата запроса в виде ассоциативного массива
  • oci_fetch_object() - Возвращает следующую строку из результата запроса в виде объекта
  • oci_fetch_row() - Возвращает следующую строку из результата запроса в виде нумерованного массива
  • oci_result() - Возвращает значение поля из результата запроса

add a note add a note

User Contributed Notes

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