Функции Язык программирования PHP

ifx_fetch_row

(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);

Назад Оглавление Вперёд
ifx_errormsg Вверх ifx_fieldproperties

Глава 9. Выражения

Последний пример выражений, рассматриваемых нами здесь, это комбинированные выражения вида операция-присвоение. Вы уже знаете, что, если вы хотите увеличить $a на 1, вы просто записываете '$a++' или '++$a'. Но что, если вы хотите добавить больше, чем 1, например, 3? Вы можете, конечно, записать '$a++' несколько раз, но это, очевидно, не самый эффективный и удобный способ. Чаще всего записывают '$a = $a + 3'. '$a + 3' вычисляется в значение $a плюс 3, и оно присваивается обратно переменной $a, что увеличивает значение $a на 3. В PHP, как и в некоторых других языках вроде C, вы можете записать это сокращённо, что со временем даст возможность легче читать и понимать код. Добавить 3 к текущему значению $a можно, записав '$a += 3'. Это означает "взять значение переменной $a, прибавить к нему 3 и присвоить новое значение этой же переменной $a". Помимо того, что это понятнее, это также ускоряет выполнение. Значением '$a += 3', как значением регулярного выражения, является присвоенное значение. Заметьте, что это НЕ 3, а объединённое значение переменной $a плюс 3. Любая двухместная операция может использоваться в таком режиме операция-присвоение, например, '$a -= 5' (вычесть 5 из значения переменной $a), '$b *= 7' (умножить значение переменной $b на 7), etc.

Имеется ещё одно выражение, которое может показаться неоднозначным, если вы не встречали его в других языках, тернарная условная операция:

$first ? $second : $third