(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_binmode — Управляет обработкой двоичных данных столбца
Управляет обработкой двоичных данных столбца. Затрагиваемые типы ODBC SQL: BINARY
, VARBINARY
и LONGVARBINARY
. Режим по умолчанию можно установить с помощью директивы php.iniuodbc.defaultbinmode.
Когда двоичные данные SQL преобразуются в символьные данные C (ODBC_BINMODE_CONVERT
), каждый байт (8 бит) исходных данных представляется в виде двух символов ASCII. Эти символы представляют собой символьное представление числа в формате ASCII в его шестнадцатеричной форме. Например, двоичное число 00000001
преобразуется в "01"
, а 11111111
- в "FF"
.
Хотя обработка столбцов BINARY
и VARBINARY
зависит только от binmode, обработка столбцов LONGVARBINARY
также зависит от longreadlen:
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
:
ODBC_BINMODE_PASSTHRU
: Использовать режим passthru для двоичных данных ODBC_BINMODE_RETURN
: Вернуть как есть ODBC_BINMODE_CONVERT
: Преобразовать в char и вернуть Замечание: На обработку двоичных столбцов LONG также влияет функция odbc_longreadlen().