odbc_binmode

(PHP 4, PHP 5, PHP 7, PHP 8)

odbc_binmodeУправляет обработкой двоичных данных столбца

Описание

odbc_binmode(resource $statement, int $mode): bool

Управляет обработкой двоичных данных столбца. Затрагиваемые типы ODBC SQL: BINARY, VARBINARY и LONGVARBINARY. Режим по умолчанию можно установить с помощью директивы php.ini uodbc.defaultbinmode.

Когда двоичные данные SQL преобразуются в символьные данные C (ODBC_BINMODE_CONVERT), каждый байт (8 бит) исходных данных представляется в виде двух символов ASCII. Эти символы представляют собой символьное представление числа в формате ASCII в его шестнадцатеричной форме. Например, двоичное число 00000001 преобразуется в "01" , а 11111111 - в "FF".

Хотя обработка столбцов BINARY и VARBINARY зависит только от binmode, обработка столбцов LONGVARBINARY также зависит от longreadlen:

Обработка LONGVARBINARY
binmode longreadlen result
ODBC_BINMODE_PASSTHRU 0 passthru
ODBC_BINMODE_RETURN 0 passthru
ODBC_BINMODE_CONVERT 0 passthru
ODBC_BINMODE_PASSTHRU >0 passthru
ODBC_BINMODE_RETURN >0 вернуть как есть
ODBC_BINMODE_CONVERT >0 вернуть в виде char

Если используется odbc_fetch_into(), passthru означает, что для этих столбцов возвращается пустая строка. Если используется odbc_result(), passthru означает, что данные отправляются клиенту напрямую (т.е. печатаются).

Список параметров

statement

Идентификатор результата.

Если statement равен 0, настройки применяются по умолчанию для новых результатов.

mode

Возможные значения для mode:

Замечание: На обработку двоичных столбцов LONG также влияет функция odbc_longreadlen().

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.