(PECL CUBRID >= 8.3.0)
cubrid_fetch — Выбирает следующую строку из набора результатов
Функция cubrid_fetch() используется для получения одной строки из результата запроса. Курсор автоматически переместится на следующую строку после получения результата.
result
result
, полученный из cubrid_execute()
type
Тип массива полученного результата CUBRID_NUM, CUBRID_ASSOC, CUBRID_BOTH, CUBRID_OBJECT. Для управления LOB-объектом, используйте CUBRID_LOB.
Массив результатов или объект, в случае успешного выполнения процесса.
false
, если строк больше нет; NULL в случае возникновения ошибки.
Результат может быть получен либо как массив, либо как объект, установка параметра type
определяет,
какой тип данных использовать.
Переменной type
можно присвоить одно из следующих значений:
Если параметр type
опущен, результат будет получен с использованием опции CUBRID_BOTH по умолчанию.
Для получения результата запроса в виде объектных данных, имя столбца результата должно подчиняться правилам именования идентификаторов в PHP.
Например, имя столбца, такое как "count(*)", не может быть получено в виде объекта.
Пример #1 Пример использования cubrid_fetch()
<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT * FROM stadium WHERE nation_code='GRE' AND seats > 10000");
printf("%-40s %-10s %-6s %-20s\n", "name", "area", "seats", "address");
while ($row = cubrid_fetch($req)) {
printf("%-40s %-10s %-6s %-20s\n",
$row["name"], $row["area"], $row["seats"], $row["address"]);
}
// для управления LOB-объектом, можно использовать cubrid_fetch($req, CUBRID_LOB)
cubrid_close_request($req);
cubrid_disconnect($conn);
?>
Результат выполнения приведённого примера:
name area seats address Panathinaiko Stadium 86300.00 50000 Athens, Greece Olympic Stadium 54700.00 13000 Athens, Greece Olympic Indoor Hall 34100.00 18800 Athens, Greece Olympic Hall 52400.00 21000 Athens, Greece Olympic Aquatic Centre 42500.00 11500 Athens, Greece Markopoulo Olympic Equestrian Centre 64000.00 15000 Markopoulo, Athens, Greece Faliro Coastal Zone Olympic Complex 34650.00 12171 Faliro, Athens, Greece Athens Olympic Stadium 120400.00 71030 Maroussi, Athens, Greece Ano Liossia 34000.00 12000 Ano Liosia, Athens, Greece