создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

PHP. Руководство по PHP. 2005

oci_fetch_array

Пред.

След.

oci_fetch_array

(PHP 5)oci_fetch_array -- Возвращает следующую строку из результата запроса в виде ассоциативного массива, числового массива или оба сразу

Описание

array oci_fetch_array (resource statement [, int mode])

Возвращает массив, который соответствует строке из результата запроса или FALSE, если строк в результате больше не осталось.

По умолчанию, oci_fetch_array() возвращает массив с ассоциативными и числовыми индексами.

Необязательный второй параметр может принимать значение одной или суммы из нескольких констант. Вы можете использовать следующие константы:

- OCI_BOTH - возвращать массив с ассоциативными и числовыми индексами (то же, что и OCI_ASSOC + OCI_NUM), это значение используется по умолчанию.
- OCI_ASSOC - возвращать массив с ассоциативными индексами (именно так работает oci_fetch_assoc()).
- OCI_NUM - возвращать массив с числовыми индексами, начинающимися с нуля (именно так работает oci_fetch_row()).
- OCI_RETURN_NULLS - создавать пустые элементы для полей со значением NULL.
- OCI_RETURN_LOBS - возвращать значение поля LOB вместо дескриптора.

Значение по умолчанию для mode равно OCI_BOTH + OCI_RETURN_NULLS.

Нужно также упомянуть тот факт, что oci_fetch_array() незначительно медленней, чем oci_fetch_row(), но предоставляет более гибкий интерфейс.

Замечание: Вам не следует забывать о том, что Oracle возвращает имена полей в ВЕРХНЕМ регистре, поэтому индексы ассоциативного массива будут также в ВЕРХНЕМ регистре.

Пример 1. Пример использования oci_fetch_array() с флагом OCI_BOTH

<?

$connection = oci_connect("apelsin", "kanistra");

$query = "SELECT id, name FROM fruits";

$statement = oci_parse ($connection, $query);

oci_execute ($statement);

while ($row = oci_fetch_array ($statement, OCI_BOTH)){

echo $row[0]." and ".$row['ID']." is the same<br>";

echo $row[1]." and ".$row['NAME']." is the same<br>";

}

?>

Пример 2. Пример использования oci_fetch_array() с флагом OCI_NUM

<?

$connection = oci_connect("user", "password");

$query = "SELECT id, name, lob_field FROM fruits";

$statement = oci_parse ($connection, $query);

oci_execute ($statement);

while ($row = oci_fetch_array ($statement, OCI_NUM)){

echo $row[0]."<br>";

echo $row[1]."<br>";

echo $row[2]->read(100)."<br>";//this will output first 100 bytes from LOB

}

?>

Пример 3. Пример использования oci_fetch_array() с флагом OCI_ASSOC

<?

$connection = oci_connect("user", "password");

$query = "SELECT id, name, lob_field FROM fruits";

$statement = oci_parse ($connection, $query);

oci_execute ($statement);

while ($row = oci_fetch_array ($statement, OCI_NUM)){

echo $row['ID']."<br>";

echo $row['NAME']."<br>";

echo $row['LOB_FIELD']."<br>";//this will output "Object id #1"

}

?>

Пример 4. Пример использования oci_fetch_array() с флагом OCI_RETURN_LOBS

<?

$connection = oci_connect("user", "password");

$query = "SELECT id, name, lob_field FROM fruits";

$statement = oci_parse ($connection, $query);

oci_execute ($statement);

while ($row = oci_fetch_array ($statement, OCI_NUM)){

echo $row[0]."<br>";

echo $row[1]."<br>";

echo $row['LOB_FIELD']."<br>";//this will output LOB's content

}

?>

См. также oci_fetch_assoc(), oci_fetch_object(), oci_fetch_row() и oci_fetch_all().

Пред.

Начало

След.

oci_fetch_all

Уровень выше

oci_fetch_assoc

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting