|
(PHP 3>= 3.0.3, PHP 4)
ifx_fetch_row - получает ряд как перечислимый массив. Описание
array ifx_fetch_row (int result_id [, mixed position])
Возвращает ассоциативный массив, соответствующий извлечённому ряду, или FALSE, если рядов больше нет.
Blob-столбцы возвращаются как целочисленные blob id-значения для использования в
ifx_get_blob(), если только вы не использовали
ifx_textasvarchar(1) или ifx_byteasvarchar(1), - в этих случаях blob'ы возвращаются как строковые значения.
Возвращает FALSE при ошибке. result_id это правильный resultid, возвращённый функцией
ifx_query() или ifx_prepare() (только запросы select!).
position это необязательный параметр для операций "извлечения" в "scroll"-курсорах:
"NEXT", "PREVIOUS", "CURRENT", "FIRST", "LAST" или число. Если вы специфицировали число, выполняется извлечение "absolute". Этот параметр не
обязателен и верен только для SCROLL-курсоров. ifx_fetch_row() извлекает один ряд данных из результата, ассоциированного со специфицированным
идентификатором результата. Ряд возвращается как массив. Каждый результирующий столбец сохраняется как смещение массива, начиная со смещения 0,
с именем столбца в качестве ключа. Последующие вызовы ifx_fetch_row() будут возвращать следующий ряд результирующего набора или
FALSE, если рядов больше нет.
Пример 1. Informix-извлечение рядов
$rid = ifx_prepare ("select * from emp where name like " . $name,
$connid, IFX_SCROLL);
if (! $rid) {
... error ...
}
$rowcount = ifx_affected_rows($rid);
if ($rowcount > 1000) {
printf ("Too many rows in result set (%d)\n<br>", $rowcount);
die ("Please restrict your query<br>\n");
}
if (! ifx_do ($rid)) {
... error ...
}
$row = ifx_fetch_row ($rid, "NEXT");
while (is_array($row)) {
for(reset($row); $fieldname=key($row); next($row)) {
$fieldvalue = $row[$fieldname];
printf ("%s = %s,", $fieldname, $fieldvalue);
}
printf("\n<br>");
$row = ifx_fetch_row ($rid, "NEXT");
}
ifx_free_result ($rid); |
|
| |