array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'de', ), 'this' => array ( 0 => 'function.odbc-binmode.php', 1 => 'odbc_binmode', ), 'up' => array ( 0 => 'ref.uodbc.php', 1 => 'ODBC Funktionen', ), 'prev' => array ( 0 => 'function.odbc-autocommit.php', 1 => 'odbc_autocommit', ), 'next' => array ( 0 => 'function.odbc-close-all.php', 1 => 'odbc_close_all', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'de', 'path' => 'reference/uodbc/functions/odbc-binmode.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_binmode — Behandlung von Binärdaten
Steuert die Behandlung binärer Spaltendaten. Betroffene ODBC SQL Typen sind
BINARY
, VARBINARY
und
LONGVARBINARY
.
Der Standardmodus kann mit der php.ini-Anweisung uodbc.defaultbinmode festgelegt
werden.
Werden SQL-Binärdaten in C-Zeichendaten konvertiert
(ODBC_BINMODE_CONVERT
), wird jedes Byte (8 Bits) der
ursprünglichen Daten zu zwei ASCII-Zeichen, die der hexadezimalen
Darstellung des Wertes entsprechen. Der Binärwert 00000001 wird zum
Beispiel zu "01"
gewandelt, der Binärwert 11111111 zu
"FF"
.
Während die Behandlung von BINARY
- und
VARBINARY
-Spalten nur von binmode abhängt, hängt die
Behandlung von LONGVARBINARY
-Spalten auch von
longreadlen ab:
binmode | longreadlen | Resultat |
---|---|---|
ODBC_BINMODE_PASSTHRU |
0 | Direkte Ausgabe |
ODBC_BINMODE_RETURN |
0 | Direkte Ausgabe |
ODBC_BINMODE_CONVERT |
0 | Direkte Ausgabe |
ODBC_BINMODE_PASSTHRU |
>0 | Direkte Ausgabe |
ODBC_BINMODE_RETURN |
>0 | Direkte Ausgabe |
ODBC_BINMODE_CONVERT |
>0 | Rückgabe als CHAR-Werte |
Wenn odbc_fetch_into() genutzt wird, wird bei direkter Ausgabe ein leerer String als Spaltenwert zurückgeliefert. Wenn odbc__result() genutzt wird, werden die Daten bei direkter Ausgabe direkt an den Client gesendet, d.h. ausgegeben.
statement
Die Ergebniskennung.
Wenn statement
gleich 0
ist,
wird die Einstellung als Standardwert für die neue Ergebnisse
verwendet.
mode
Mögliche Werte für mode
sind:
ODBC_BINMODE_PASSTHRU
: schleift BINÄRE Daten durch
ODBC_BINMODE_RETURN
: liefert die Binärdaten unverändert zurück
ODBC_BINMODE_CONVERT
: konvertiert die Binärdaten zu Zeichen und
liefert sie zurück
Hinweis: Die Behandlung von binary long Spalten wird ebenfalls durch odbc_longreadlen() beeinflusst.