ifx_fetch_row

(PHP 4, PHP 5 < 5.2.1)

ifx_fetch_rowПолучить строку в виде ассоциативного массива

Описание

ifx_fetch_row ( resource $result_id [, mixed $position ] ) : array

Извлекает строку в виде ассоциативного массива.

Каждый запуск ifx_fetch_row() будет возвращать следующую строку из результирующего набора и FALSE, когда строки кончатся.

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

result_id

result_id - идентификатор запроса, полученный ifx_query() или ifx_prepare() (только для запросов типа SELECT!).

position

Опциональный параметр при использовании проматываемого курсора: NEXT, PREVIOUS, CURRENT, FIRST, LAST или число. Если вы укажете число, будет возвращена строка с данным номером. Этот параметр опционален и применяется только с курсорами типа SCROLL.

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

Возвращает ассоциативный массив, содержащий строку результирующего набора, либо FALSE, если строки закончились.

Столбцы BLOB возвращаются в виде их числовых идентификаторов, которые можно использовать с функцией ifx_get_blob(), если не используется ifx_textasvarchar(1) или ifx_byteasvarchar(1), в этом случае они будут возвращаться как VARCHAR.

Примеры

Пример #1 Извлечение строк

<?php
$rid 
ifx_prepare ("select * from emp where name like " $name,
                     
$connidIFX_SCROLL);
if (! 
$rid) {
    
/* ... ошибка ... */
}
$rowcount ifx_affected_rows($rid);
if (
$rowcount 1000) {
    
printf ("Слишком много строк в результирующем наборе (%d)\n<br />"$rowcount);
    die (
"Пожалуйста, ограничьте запрос<br />\n");
}
if (! 
ifx_do ($rid)) {
   
/* ... ошибка ... */
}
$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);
?>

add a note add a note

User Contributed Notes 1 note

up
1
rpuchalsky at att dot net
23 years ago
If you use a select statement that
identifies fields according to which
table they come from, i.e.

select tab1.name, tab2.phone from
tab1, tab2
where tab1.id = tab2.id

then the associative keys of the array returned by ifx_fetch_row will not include the table names.  For the example above, if you used

$row = ifx_fetch_row ($rid);

then the first field in the
returned array would be $row["name"],
not $row["tab1.name"] .
To Top