PHP odbc_binmode ODBC 函数
-
定义和用法
odbc_binmode - 处理二进制列数据 -
版本支持
PHP4 PHP5 PHP7 支持 支持 支持 -
语法
odbc_binmode ( resource $result_id , int $mode )
启用对二进制列数据的处理。 受影响的ODBC SQL类型为BINARY,VARBINARY和LONGVARBINARY。 当二进制SQL数据转换为字符C数据时,源数据的每个字节(8位)都表示为两个ASCII字符。 这些字符以十六进制形式表示数字的ASCII字符。 例如,将二进制00000001转换为“ 01”,将二进制11111111转换为“FF”。如果使用odbc_fetch_into(),则passthru表示将为这些列返回一个空字符串。 -
参数
参数 必需的 描述 result_id 是 结果标识符。 如果result_id为0,则设置将默认应用于新结果。 注意:longreadlen的默认值为4096,模式默认值为ODBC_BINMODE_RETURN。 二进制长列的处理也受odbc_longreadlen()影响。
mode 是 模式的可能值为: - ODBC_BINMODE_PASSTHRU:传递二进制数据
- ODBC_BINMODE_RETURN:原样返回
- ODBC_BINMODE_CONVERT:转换为char并返回
-
返回值
成功时返回 TRUE, 或者在失败时返回 FALSE。 -
示例
<?php function hex2bin($data){ $len = strlen($data); return pack("H" . $len, $data); } $connH=odbc_pconnect("ImageDB","sa","",SQL_CUR_USE_IF_NEEDED) or die(odbc_errormsg()); $result=odbc_exec($connH, "SELECT Emp_Image FROM tblEmployeePics WHERE Emp_Id=547"); if ($result) { odbc_longreadlen($result, 131072); odbc_binmode($result,ODBC_BINMODE_CONVERT); $m_FValue=odbc_result($result, 1); $out=hex2bin($m_FValue); }
-