如何将带有图像的消息保存在数据库中[关闭]

问题描述 投票:-4回答:1

我现在正在论坛上很忙,我想让访问者也可以通过论坛发布带有图像和文本的消息。但是,我不知道如何将其保存在数据库中,而不是将其读取为图像。你有什么主意吗?

问题已经解决,我将创建一个额外的列,称为imgUrl(或类似的东西),如果此列具有任何值,我将在值周围放置img标签。

php image
1个回答
0
投票

选项1:将图片上传添加到您的网站,并将图片的url保存到数据库。

选项2:使用base64_encode()将图像转换为文本。

$image = file_get_contents($_FILES['your_fileupload_name']['tmp_name']);
$ext = pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION);
$base64 = 'data:image/' . $ext . ';base64,' . base64_encode($image);

然后将$base64保存到数据库,并且在读取数据库时可以使用base64_decode()将其转换为图像。

我更喜欢选项1,因为它效率更高。 Base64编码将图像大小增加了33%。

© www.soinside.com 2019 - 2024. All rights reserved.