(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)
oci_field_type_raw — Возвращает исходный тип поля Oracle
$statement
, string|int $column
): int|false
Возвращает тип "SQLT" Oracle поля column
.
Если вы хотите получить тип поля, то oci_field_type() подойдёт вам больше.
statement
Идентификатор допустимого OCI запроса.
column
Может быть номером поля (нумерация начинается с 1) или именем.
Возвращает исходный тип Oracle в виде числа или false
в случае возникновения ошибки.
Пример #1 Пример использования oci_field_type_raw()
<?php
// Создать таблицу:
// CREATE TABLE mytab (number_col NUMBER, varchar2_col varchar2(1), clob_col CLOB, date_col DATE);
$conn = oci_connect("hr", "hrpwd", "localhost/XE");
if (!$conn) {
$m = oci_error();
trigger_error(htmlentities($m['message']), E_USER_ERROR);
}
$stid = oci_parse($conn, 'select * from mytab');
oci_execute($stid, OCI_DESCRIBE_ONLY); // используйте OCI_DESCRIBE_ONLY, если не получаете данных
$n = oci_num_fields($stid);
for ($i = 1; $i <= $n; ++$i) {
echo oci_field_name($stid, $i) . " - исходный тип: " . oci_field_type_raw($stid, $i) . "<br>\n";
}
// Выведет:
// NUMBER_COL - исходный тип: 2
// VARCHAR2_COL - исходный тип: 1
// CLOB_COL - исходный тип: 112
// DATE_COL - исходный тип: 12
oci_free_statement($stid);
oci_close($conn);
?>