首页 >后端开发 >php教程 >如何使用 PHP 在 MySQL 中正确存储图像(Blob)?

如何使用 PHP 在 MySQL 中正确存储图像(Blob)?

Linda Hamilton
Linda Hamilton原创
2024-11-30 13:47:11988浏览

How to Properly Store Images (Blobs) in MySQL Using PHP?

使用 PHP 在 MySQL 数据库中存储 Blob

尝试在 MySQL 数据库中存储图像时,如果查询无法插入图像,则可能会遇到问题。本文将提供此问题的解决方案。

问题:

在以下查询中,file_get_contents($tmp_image) 被视为字符串而不是函数调用:

$sql = "INSERT INTO ImageStore(ImageId,Image) 
VALUES('$this->image_id','file_get_contents($tmp_image)')";

解决方案1:

跳出字符串并执行显式串联:

$sql = "INSERT INTO ImageStore(ImageId,Image) 
VALUES('$this->image_id','" . file_get_contents($tmp_image) . "')";

解决方案2:

转义二进制数据以防止无效查询:

$sql = "INSERT INTO ImageStore(ImageId,Image) 
VALUES('$this->image_id','" . mysql_escape_string(file_get_contents($tmp_image)) . "')";

解决方案3:

通过将图像存储在文件系统中或使用云存储服务来最小化数据库大小。

以上是如何使用 PHP 在 MySQL 中正确存储图像(Blob)?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn