PHP Conference Nagoya 2025

db2_fetch_object

(PECL ibm_db2 >= 1.0.0)

db2_fetch_objectВозвращает объект со свойствами, представляющими столбцы в выбранной строке

Описание

db2_fetch_object(resource $stmt, int $row_number = -1): stdClass|false

Возвращает объект, в котором каждое свойство представляет столбец, возвращённый в строке, полученной из набора результатов.

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

stmt

Допустимый ресурс stmt, содержащий набор результатов.

row_number

Запрашивает конкретную строку по индексу (начинается с 1) из набора результатов. Передача параметра приводит к предупреждению PHP, если в наборе результатов используется курсор "forward-only".

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

Возвращает объект, представляющий одну строку в наборе результатов. Свойства объекта сопоставляются с именами столбцов в наборе результатов.

Серверы баз данных IBM DB2, Cloudscape и Apache Derby обычно переводят имена столбцов в верхний регистр, поэтому свойства объекта будут отражать этот регистр.

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

Возвращает false, если ни одна строка не была получена.

Примеры

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

В следующем примере выполняется запрос SELECT со скалярной функцией RTRIM, которая удаляет пробелы в конце столбца. Вместо того, чтобы создавать объект со свойствами "BREED" и "2", мы используем конструкцию AS в запросе SELECT для присвоения имени "name" изменённому столбцу. Сервер базы данных переводит имена столбцов в верхний регистр, в результате чего получается объект со свойствами "BREED" и "NAME".

<?php
$conn
= db2_connect($database, $user, $password);

$sql = "SELECT breed, RTRIM(name) AS name
FROM animals
WHERE id = ?"
;

if (
$conn) {
$stmt = db2_prepare($conn, $sql);
db2_execute($stmt, array(0));

while (
$pet = db2_fetch_object($stmt)) {
echo
"Иди сюда, {$pet->NAME}, мой маленький {$pet->BREED}!";
}
db2_close($conn);
}
?>

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

Иди сюда, Пушок, мой маленький котёнок!

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

  • db2_fetch_array() - Возвращает массив, индексированный по положению столбца, представляющий строку в наборе результатов
  • db2_fetch_assoc() - Возвращает массив, индексированный по имени столбца, представляющий строку в наборе результатов
  • db2_fetch_both() - Возвращает массив, индексированный как по имени столбца, так и по позиции, представляющий строку в наборе результатов
  • db2_fetch_row() - Устанавливает указатель набора результатов на следующую строку или запрошенную строку
  • db2_result() - Возвращает один столбец из строки в наборе результатов

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top