【发布时间】:2017-02-24 12:14:21
【问题描述】:
我正在使用 PHP 7 和 MariaDB 5.5.47(在 CentOS 7 上),以下代码成功执行,没有错误:
$id = 3;
$tmp_name = $_FILES['file']['tmp_name'];
$fp = fopen($tmp_name, 'rb');
$statement = $db->prepare("INSERT INTO Foo (id, data) VALUES (?, ?)");
$statement->bindParam(1, $id);
$statement->bindParam(2, $fp, PDO::PARAM_LOB);
$statement->execute();
$statement->closeCursor();
close($fp);
使用 MySQL WorkBench 它显示“数据”列是“BLOB”(与 null 相反,如果我什么都不插入)。当我尝试查询数据时,它是零字节。这段代码适用于 PHP 5,但我没有找到任何不能适用于 PHP 7 的原因。
【问题讨论】:
-
此代码有效,直到我尝试上传更大的文件(例如 > 20mb)。看我的“答案”