Returning SQL Blob from PHP JSON


Returning SQL Blob from PHP JSON

我读过很多关于PHP/JSON blob处理的文章,但似乎没有一篇提供关于如何处理的清晰示例。我正在尝试与服务器上的SQL数据库进行通信。有问题的表有一个中等blob字段。我使用PHP和JSON来获取数据并将其显示在Android手机上。我对非blob数据没有问题。我可以毫无问题地抓住它并展示出来。但是,blob数据总是通过JSON返回为"null"。我知道JSON不直接支持二进制数据,但我的问题仍然是,我如何从Android系统访问blob数据?有问题的blob数据主要是文本文件(如.PDF、.DOC等)。我无法控制SQL表。更重要的是,我如何将blob字段与其他数据打包,以便在Android平台上处理它?如有任何帮助,我们将不胜感激。

将二进制数据存储在数据库表中可能是个坏主意,请参阅以下问题:将图像存储在数据库中-是还是否?

您可以在PHP中使用base64_encode()对二进制数据进行编码。

在PHP中,它可能看起来像这样:

$row = mysql_fetch_assoc($res);
foreach($row as $key => $value){
    $json[$key] = base64_encode($value);
}
echo json_encode($json);