我需要检索保存在 db400 表的 blob 字段中的一些图像。我正在尝试使用 PHP ODBC 库,这是示例代码:
//connect to database
if(!$conn = odbc_connect($DNS, $user, $password)){
exit("Error");
}
$sql = "SELECT TSMIME, TSIMG
FROM SVMAGDAT.DFW3S00F
WHERE TSIDMO=17 and TSPRMO=0";
$result = odbc_exec($conn, $sql);
$type=$lob="";
if ($result) {
odbc_longreadlen($result, 5242880);//5MB
odbc_binmode($result,ODBC_BINMODE_CONVERT);
$type = odbc_result($result, "TSMIME");
$lob = odbc_result($result, "TSIMG");
}
echo "<img src=\"data:$type;base64,$lob\" >";
图像使用 base64 编码保存,通过他的查询我只得到一行。我尝试更改 odbc_longreadlen 和 odbc_binmode 没有结果。
使用此配置 $lob 变量为空,而 $type 已正确设置。
如果我将 odbc_binmode 设置为 ODBC_BINMODE_PASSTHRU 我看不到任何结果,因为浏览器每次都会崩溃。
有什么建议吗?
谢谢