Вы не зарегистрированы? Нажмите здесь для регистрации.
Забыли пароль? Запросите новый здесь.
|
Вы должны авторизироваться, чтобы добавить сообщение.
|
|
|
Последние активные темы форума |
|
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
<?php
$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
<?php
$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
<?php
$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
<?php
$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().
|
· Гостей: 18
· Пользователей: 0
· Всего пользователей: 453
· Новый пользователь: ZDA
|
|