odbc_binmode
(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_binmode — Manipulação de dados de colunas binárias
Descrição
Controla a manipulação de dados de colunas binárias. Os tipos SQL ODBC afetados são
BINARY
, VARBINARY
e
LONGVARBINARY
.
O modo padrão pode ser definido usando a diretiva
uodbc.defaultbinmode do php.ini.
Quando dados SQL binários são convertidos em dados de caracteres C (ODBC_BINMODE_CONVERT
), cada byte
(8 bits) dos dados de origem é representado como dois caracteres ASCII.
Esses caracteres são a representação de caracteres ASCII do
número em sua forma hexadecimal. Por exemplo, um binário
00000001
é convertido em
"01"
e um binário 11111111
é convertido em "FF"
.
Embora o tratamento das colunas BINARY
e VARBINARY
dependa apenas do "binmode", o tratamento das colunas LONGVARBINARY
também depende do "longreadlen":
binmode | longreadlen | resultado |
---|---|---|
ODBC_BINMODE_PASSTHRU |
0 | intermediário |
ODBC_BINMODE_RETURN |
0 | intermediário |
ODBC_BINMODE_CONVERT |
0 | intermediário |
ODBC_BINMODE_PASSTHRU |
>0 | intermediário |
ODBC_BINMODE_RETURN |
>0 | retorna como está |
ODBC_BINMODE_CONVERT |
>0 | retorna como char |
Se odbc_fetch_into() for usada, "intermediário" significa que uma string vazia será retornada para essas colunas. Se odbc_result() for usada, "intermediário" significa que os dados são enviados diretamente ao cliente (ou seja, exibidos).
Parâmetros
statement
-
O identificador do resultado.
Se
statement
for igual a0
, as configuração se aplicam como padrão para novos resultados. mode
-
Valores possíveis para
mode
são:-
ODBC_BINMODE_PASSTHRU
: Intermediário para dados BINARY -
ODBC_BINMODE_RETURN
: Retorna como está -
ODBC_BINMODE_CONVERT
: Converte para "char" e retorna
Note: A manipulação de colunas de binários longos também é afetada por odbc_longreadlen().
-
Valor Retornado
Sempre retorna true
.