首页  >  文章  >  数据库  >  如何使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB?

如何使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB?

Linda Hamilton
Linda Hamilton原创
2024-10-24 03:52:02242浏览

How to Store PDF Files as BLOBs in MySQL Using PHP?

使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB

在数据库中存储二进制大对象 (BLOB)(例如 PDF 文件)在某些情况下很有用场景。本文探讨如何使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB。

将 PDF 文件插入 MySQL

将 PDF 文件作为 BLOB 插入 MySQL 表中,您可以使用以下步骤:

  1. 建立数据库连接。使用 mysql_connect 或 MySQL 改进扩展 (MySQLi) 等 MySQL 函数连接到数据库。
  2. 准备 SQL 查询。创建一个包含 BLOB 列的 SQL INSERT 语句来存储文件数据。
  3. 转义文件内容。为了防止 SQL 注入,在将文件内容插入数据库之前,使用 PHP 的 mysql_real_escape_string 函数(或 mysqli_real_escape_string)对文件内容进行转义。
  4. 执行查询。使用 mysql_query 或 mysqli_query 执行 INSERT 语句。

示例代码

以下 PHP 代码片段演示了如何在 MySQL 表中存储 PDF 文件:

<code class="php">$fileContents = file_get_contents('/path/to/file.pdf');
$escapedFileContents = mysql_real_escape_string($fileContents);

$query = 'INSERT INTO files (name, data) VALUES ("pdf_file", "' . $escapedFileContents . '");';
$result = mysql_query($query);</code>

注意事项过时

需要注意的是,像 mysql_query 这样的 MySQL 函数已被弃用,不应在新代码中使用。从 PHP 7 开始,MySQL 函数已被删除。相反,使用 MySQLi 或 PHP 数据对象 (PDO) 进行数据库交互。答案中更新的示例反映了这些更改。

注意事项

虽然将文件作为 BLOB 存储在数据库中可能很方便,但这通常不是最佳实践。 BLOB 可能会导致表膨胀和性能问题。更好的方法是将文件路径存储在数据库中并将文件本身存储在文件系统上。

以上是如何使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB?的详细内容。更多信息请关注PHP中文网其他相关文章!

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