|
oci_define_by_name (PHP 5) oci_define_by_name --
Определяет переменную PHP, в которую будет возвращено соответствующее поле
из результата
Описаниеbool oci_define_by_name ( resource stmt, string column_name, mixed &variable [, int type] )
oci_define_by_name() назначает переменную PHP, которая
будет использована, как получатель результата выполнения выборки.
Замечание:
Не забывайте о том, что Oracle всегда возвращает имена полей в
ВЕРХНЕМ регистре (если, конечно, вы не используете синтаксис
'SELECT field_name "field_name" FROM table_name').
Поэтому oci_define_by_name() обычно ожидает
параметр column_name в верхнем регистр.
Заметьте, что эта функция не возвратит ошибку, если
соответствующее поле будет отсутствовать в результате выборки.
Если вам нужно назначить переменную абстрактного дипа данных
(LOB/ROWID/BFILE), то ее необходимо сначала создать с помощью
oci_new_descriptor(). См. также
oci_bind_by_name().
Пример 1. Пример использования oci_define_by_name()
<?php /* oci_define_by_name example - thies at thieso dot net (980219) */
$conn = oci_connect("scott", "tiger");
$stmt = oci_parse($conn, "SELECT empno, ename FROM emp");
/* the define MUST be done BEFORE ociexecute! */
oci_define_by_name($stmt, "EMPNO", $empno); oci_define_by_name($stmt, "ENAME", $ename);
oci_execute($stmt);
while (oci_fetch($stmt)) { echo "empno:" . $empno . "\n"; echo "ename:" . $ename . "\n"; }
oci_free_statement($stmt); oci_close($conn); ?>
|
|
Замечание:
В версиях PHP ниже 5.0.0 эта функция называлась
ocidefinebyname().
В PHP 5.0.0 и выше ocidefinebyname() является
алиасом oci_define_by_name(), поэтому вы можете
продолжать использовать это имя, однако это не рекомендуется.
| |