1

我通过将它们保存为 blob 格式将 pdf/word 文档保存在数据库中。现在我想把它读成字符串。我的意图只是将保存的 blob 内容读取为字符串,以便我可以搜索文本。

例如:如果上传了几个不同类型的文档,我想在其中搜索文本。

何能实现?

提前致谢。

4

1 回答 1

0

首先,BLOB 是一个 BINARY LOB,您正确使用了它 - 将 tha 文件存储到数据库中。由于它是 BINARY,因此该列中的数据也以其二进制形式存储。因此,我不确定您是否可以在二进制数据中搜索文本...

无论如何,您应该能够通过以下方式做到这一点:

$conn = oci_connect('user', 'pass', 'server');
$q = "SELECT blob_column FROM my_blob_table WHERE my_blob_id = :id";
$stmt = oci_parse($conn, $q);
oci_bind_by_name($stmt, ':id', $id);
oci_execute($stmt);
$res = oci_fetch_assoc($stmt);
$blob = $res['blob_column']->read($res['blob_column']->size());
var_dump($blob);

如果要将数据存储为文本,请改用 CLOB (CHARACTER LOB) 列。

于 2012-05-21T12:27:08.637 回答