使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB
使用 PHP 在 MySQL 中将 PDF 文件存储为 BLOB(二进制大型对象)的一种方法就是利用MySQL的函数与数据库进行交互。下面是演示这种方法的代码片段:
$result = mysql_query('INSERT INTO table (data) VALUES (\'' . mysql_real_escape_string(file_get_contents('/path/to/the/file/to/store.pdf')) . '\');');
但是,由于表膨胀等潜在问题,在数据库中存储 BLOB 通常不被认为是最佳选择。另一种方法是将文件的路径存储在数据库中,而不是文件本身。
过时的 PHP 代码和弃用注释
值得注意的是,提供的代码示例使用已弃用的 mysql_* 函数。这些函数不再推荐,并在 PHP 7 中被完全删除。为了避免潜在的错误,必须切换到更现代的替代方案,例如用于数据库抽象的 MySQLi 或 PDO。
使用 MySQLi 过程模式的替代方案
在过程模式下使用 MySQLi,以下是执行相同任务的方法:
$result = mysqli_query($db, 'INSERT INTO table (data) VALUES (\'' . mysqli_real_escape_string(file_get_contents('/path/to/the/file/to/store.pdf'), $db) . '\');');
推荐方法: MySQLi/PDO 预准备语句
为了获得最佳性能和安全性,建议使用 MySQLi 或 PDO 以及预准备语句在 MySQL 中存储 BLOB。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3