将BLOB jumble转换为0和1 [字节流到二进制字符串]

时间:2014-04-14 11:08:40

标签: php mysql binary

我的MySQL表中有一个BLOB列。当我使用PHP回显字段的值时,我得到了

SBτF¶☼╢ñ═∩P╙  _ë    ☺K ☺♦ Å☼♂↔☻        ♥ 

我有办法将二进制文件转换为0和1的字符串吗?

这个数据不是图像而不是文本,它们是小的UDP数据包,其中0和1具有重要性,我需要加载该数据并解释它

3 个答案:

答案 0 :(得分:3)

我找不到解决方法,所以我要重新发明轮子。

function binDigitsFromString($str) {
    $r = '';
    for($i=0; $i<strlen($str); $i++) $r .= sprintf("%08b",ord($str[$i]));
    return $r;
}

答案 1 :(得分:0)

如果不在标题中指定内容类型,则不应直接包含blob数据。

例如,如果blob由PNG图像的图像数据组成,您可以像这样设置标题:

header("Content-Type: image/png");
echo $myBlob;

然后将呈现为图像。

值得一读:http://www.mysqltutorial.org/php-mysql-blob/

答案 2 :(得分:0)

您可以将BLOB转换为Char而不转换为Varchar

您可以使用CAST功能将相应的值转换为字符集utf8