使用php显示存储在数据库中的图像(tinyblob)

使用php显示存储在数据库中的图像(tinyblob),php,mysql,Php,Mysql,我试图从数据库中读取图像(blob),但我遇到了问题,因为我不知道图像的mime类型。我只有tinyblob 我可以读取图像并将其保存回硬盘吗?为什么不始终将图像存储在硬盘上,并在数据库中存储基于已知目录的相对链接?为什么不始终将图像存储在硬盘上,并在数据库中存储基于已知目录的相对链接?最好的解决方案是在将图像插入blob字段的同时将mime类型存储在数据库中。否则,每次检索图像时都必须执行以下操作: $image = $row['imageblob']; // $row = result r

我试图从数据库中读取图像(blob),但我遇到了问题,因为我不知道图像的mime类型。我只有tinyblob


我可以读取图像并将其保存回硬盘吗?

为什么不始终将图像存储在硬盘上,并在数据库中存储基于已知目录的相对链接?

为什么不始终将图像存储在硬盘上,并在数据库中存储基于已知目录的相对链接?

最好的解决方案是在将图像插入blob字段的同时将mime类型存储在数据库中。否则,每次检索图像时都必须执行以下操作:

$image = $row['imageblob'];  // $row = result row from DB query.

$finfo = new finfo(FILEINFO_MIME);
$mime_type = $finfo->buffer($image);
在繁忙的系统中,这很快就会变得非常昂贵,因此最好先确定一次,然后存储结果


相关。

最佳解决方案是在将图像插入blob字段的同时将mime类型存储在DB中。否则,每次检索图像时都必须执行以下操作:

$image = $row['imageblob'];  // $row = result row from DB query.

$finfo = new finfo(FILEINFO_MIME);
$mime_type = $finfo->buffer($image);
在繁忙的系统中,这很快就会变得非常昂贵,因此最好先确定一次,然后存储结果


相关。

以下是我用来从mysql数据库中获取徽标(blob)的一些代码

<a href="index.php"><img src="data:image/png;base64,<?php echo base64_encode($MyClass->getLogo())?>" alt="Logo" width="233" height="65" /></a>

下面是我用来从mysql数据库中获取徽标(blob)的一些代码

<a href="index.php"><img src="data:image/png;base64,<?php echo base64_encode($MyClass->getLogo())?>" alt="Logo" width="233" height="65" /></a>