【问题标题】:read BLOB from mysql using php PDO使用 php PDO 从 mysql 读取 BLOB
【发布时间】:2012-02-13 18:07:24
【问题描述】:

我有一个带有 BLOB 字段(weeklyOccupancy)的数据库。我正在尝试使用以下方法访问 PHP 中的数据:

$sqlCmd = 'select weeklyOccupancy from Occupancy order by startDate;';
$pdoStmt = $dbh->query($sqlCmd);
$pdoStmt->bindColumn(1, $lob, PDO::PARAM_LOB);
$pdoStmt->fetch(PDO::FETCH_BOUND);
foreach($pdoStmt as $row){
    $weeklyData = stream_get_contents($lob); 
    ....
}

但是,stream_get_contents 说 $lob 是一个字符串(名为“资源 id #1),尽管我认为它应该是一个流。我已经看到这被称为一个错误(http://www.php.net/manual /en/pdo.lobs.php#96311)但解决方法与我的应用程序无关 - 其​​中 blob 包含一个位字符串而不是要显示的图像。

任何想法如何从 PHP 中的 blob 字段中获取数据?谢谢

【问题讨论】:

    标签: php mysql pdo blob


    【解决方案1】:

    并非所有 PDO 驱动程序都将 LOB 作为文件流返回; mysql 5 就是一个例子。您可以尝试将lob 视为绑定后的字符串。

    【讨论】:

    • 我很乐意把它当作一个字符串;但是,我需要知道允许我从数据库中检索数据的函数。
    【解决方案2】:

    哎呀。我的代码中有一个较早的错误。问题消失了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-01
      • 2014-04-15
      • 2023-03-31
      • 2016-06-05
      • 2016-08-23
      • 2014-08-20
      • 1970-01-01
      • 2014-11-15
      相关资源
      最近更新 更多