缩放/调整图像存储MySQL数据库



我搜索了很多,也许效率低下,但我找不到关于如何缩放存储在数据库中的图像的信息?

我插入我的图像作为

"0xffd8ffe110e94578696..."

使用unpack后:

$data = file_get_contents($_FILES['image']['tmp_name']);
$data = unpack('H*',$data);
$data = '0x'.$data[1];

然后我可以使用base64_encode:

预览图像
<img src="data:image/png;base64,/9j/4RDpRXhpZgAATU0AKgAAAAg...e6/9k=">

可能上面的信息是不必要的,因为如何发送img到DB以及如何预览该图像是显而易见的。但也许这能帮助你理解我。

那么有什么方法可以做到这一点吗?

缩放图像不是数据库系统的功能。相反,它是宿主语言的一个函数。

您需要从数据库中检索图像,该数据库将图像的字节流存储为二进制大对象(blob)。然后需要使用一些软件或其他软件来重新缩放它。这很可能需要解码字节流,重新采样图像,并为新图像编码字节流。

然后可以将其存储回数据库中。根据应用程序的需要,您可以选择使用原始blob更新行,或者使用新blob插入另一行。

最新更新