oci_execute
oci_fetch_array
OCI8
PHP Manual

# oci_fetch_all

(PHP 5, PECL oci8 >= 1.1.0)

oci_fetch_all — Выбирает все строки из результата запроса в массив

### Описание

int oci_fetch_all ( resource `$statement` , array `$&output` [, int `$skip` [, int `$maxrows` [, int `$flags` ]]] )

oci_fetch_all() выбирает все строки из результата запроса в указанный пользователем массив. oci_fetch_all() возвращает количество выбранных строк или `FALSE` в случае ошибки. Параметр `skip` указывает количество строк с начала резульата, которые следует пропустить (по умолчанию этот параметр равен 0, т.е. обработка начинается с самого начала). Параметр `maxrows` - это количество строк, которое требуется прочесть, начиная со строки, указанной в параметре\ `skip` (по умолчанию равно -1, т.е. все строки).

Аргумент `flags` может быть комбинацией следующих флагов:

- `OCI_FETCHSTATEMENT_BY_ROW`
- `OCI_FETCHSTATEMENT_BY_COLUMN` (значение по умолчанию)
- `OCI_NUM`
- `OCI_ASSOC`

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

`<?php
/* oci_fetch_all example mbritton at verinet dot com (990624) */
$conn = oci_connect("scott", "tiger");
$stmt = oci_parse($conn, "select * from emp");
oci_execute($stmt);
$nrows = oci_fetch_all($stmt, $results);
if ($nrows > 0) {
echo "<table border=\"1\">\n";
echo "<tr>\n";
while (list($key, $val) = each($results)) {
echo "<th>$key</th>\n";
}
echo "</tr>\n";
for ($i = 0; $i < $nrows; $i++) {
reset($results);
echo "<tr>\n";
while ($column = each($results)) {
$data = $column['value'];
echo "<td>$data[$i]</td>\n";
}
echo "</tr>\n";
}
echo "</table>\n";
} else {
echo "No data found<br />\n";
}
echo "$nrows Records Selected<br />\n";
oci_free_statement($stmt);
oci_close($conn);
?>`

oci_fetch_all() возвращает `FALSE` в случае ошибки.

> Замечание: В версиях PHP ниже 5.0.0 эта функция называлась ocifetchstatement(). В PHP 5.0.0 и выше ocifetchstatement() является алиасом oci_fetch_all(), поэтому вы можете продолжать использовать это имя, однако это не рекомендуется.

oci_execute
oci_fetch_array
OCI8
PHP Manual