array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.oci-field-type.php', 1 => 'oci_field_type', ), 'up' => array ( 0 => 'ref.oci8.php', 1 => 'OCI8 Функции', ), 'prev' => array ( 0 => 'function.oci-field-type-raw.php', 1 => 'oci_field_type_raw', ), 'next' => array ( 0 => 'function.oci-free-descriptor.php', 1 => 'oci_free_descriptor', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/oci8/functions/oci-field-type.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)
oci_field_type — Возвращает имя типа поля
Возвращает имя типа поля.
statement
Допустимый идентификатор OCI-выражения.
column
Может быть задано индексом (начиная с 1) или по имени.
Возвращает тип поля как строку (string) или как целое число (int) или false
, если возникла ошибка.
Пример #1 Пример использования oci_field_type()
<?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, если не получаете данных
echo "<table border=\"1\">\n";
echo "<tr>";
echo "<th>Имя</th>";
echo "<th>Тип</th>";
echo "<th>Длина</th>";
echo "</tr>\n";
$ncols = oci_num_fields($stid);
for ($i = 1; $i <= $ncols; $i++) {
$column_name = oci_field_name($stid, $i);
$column_type = oci_field_type($stid, $i);
$column_size = oci_field_size($stid, $i);
echo "<tr>";
echo "<td>$column_name</td>";
echo "<td>$column_type</td>";
echo "<td>$column_size</td>";
echo "</tr>\n";
}
echo "</table>\n";
// Выведет:
// Имя Тип Длина
// NUMBER_COL NUMBER 22
// VARCHAR2_COL VARCHAR2 1
// CLOB_COL CLOB 4000
// DATE_COL DATE 7
oci_free_statement($stid);
oci_close($conn);
?>