可能是因为读取出来的二进制数据格式不正确导致无法展示。可以尝试使用base64编码将二进制数据转换成字符串格式存储到redis中,读取出来后再进行base64解码还原成二进制数据,然后才能正常展示。以下是示例代码:

存储数据到redis中:

//读取图片二进制数据
$imageData = file_get_contents('example.jpg');
//将二进制数据转换成base64编码的字符串
$imageBase64 = base64_encode($imageData);
//存储到redis中
$redis->set('image', $imageBase64);

从redis中读取数据并展示:

//从redis中读取数据
$imageBase64 = $redis->get('image');
//将base64编码的字符串解码成二进制数据
$imageData = base64_decode($imageBase64);
//输出二进制数据,用于测试
echo $imageData;
//展示图片
header('Content-type: image/jpeg');
echo $imageData;
``
PHP 图片二进制数据存到redis中读取出来之后无法展示

原文地址: https://www.cveoy.top/t/topic/hlwW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录