odbc_binmode

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

odbc_binmodeHandling of binary column data

Description

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

Controls handling of binary column data. ODBC SQL types affected are BINARY, VARBINARY, and LONGVARBINARY. The default mode can be set using the uodbc.defaultbinmodephp.ini directive.

When binary SQL data is converted to character C data (ODBC_BINMODE_CONVERT), each byte (8 bits) of source data is represented as two ASCII characters. These characters are the ASCII character representation of the number in its hexadecimal form. For example, a binary 00000001 is converted to "01" and a binary 11111111 is converted to "FF".

While the handling of BINARY and VARBINARY columns only depend on the binmode, the handling of LONGVARBINARY columns also depends on the longreadlen as well:

LONGVARBINARY handling
binmodelongreadlenresult
ODBC_BINMODE_PASSTHRU0passthru
ODBC_BINMODE_RETURN0passthru
ODBC_BINMODE_CONVERT0passthru
ODBC_BINMODE_PASSTHRU>0passthru
ODBC_BINMODE_RETURN>0return as is
ODBC_BINMODE_CONVERT>0return as char

If odbc_fetch_into() is used, passthru means that an empty string is returned for these columns. If odbc_result() is used, passthru means that the data are sent directly to the client (i.e. printed).

Parameters

statement

The result identifier.

If statement is 0, the settings apply as default for new results.

mode

Possible values for mode are:

Note: Handling of binary long columns is also affected by odbc_longreadlen().

Return Values

Returns true on success or false on failure.

To Top