无法使用 php 从 tmp 文件夹下载大小大于 9MB 的文件


Unable to Download a file with size greater than 9MB from tmp folder using php

我有一个Web应用程序,下面是我正在尝试做的事情

  • 我要求用户使用简单的 html 页面上传 pdf 文件。此文件将上载到服务器中的临时目录。然后我尝试使用 file_get_contents 读取文件的内容并将其放入数据库中。此方法适用于小于 ~9MB 的文件,但对于超过该大小的文件则失败。

  • print_r($_FILES) 不是空的,并且填充了所有值,这意味着文件正在上传。

  • 我尝试将文件移动到另一个文件夹,然后从那里读取它,但 Web 应用程序没有写入权限,因此此方法失败。我成功地将文件移动到具有不同名称的tmp文件夹,但在目录中找不到该文件。

  • 我试图通读 fread 和 stream_get_contents 但这些方法返回大小为 1 的内容。

.PHP

$file_name = mysql_real_escape_string($_FILES['file']['name']);
$file_data = mysql_real_escape_string(file_get_contents($_FILES['file']['tmp_name']));
$file_mime = mysql_real_escape_string($_FILES['file']['type']);
$file_size = $_FILES['file']['size'];
  • 内存大小为 32M,post_max_size为 32M,upload_max_file为 500M任何帮助将不胜感激。

转到php.ini文件并制作upload_max_filesize = 32MB。希望这有帮助!