对于给定的文件大小,检索文件临时路径的功能失败

问题描述 投票:0回答:1

我有一个简单的代码如下:

   $file_tmp = $_FILES['file']['tmp_name'];

   echo $file_tmp;

   $file = new SplFileObject($file_tmp);

   echo filesize($file_tmp);

['file'] 是 html 表单的字段,用户在其中选择要在 php 编写的操作中处理的文件。

<form method="POST" action="processCity.php" enctype="multipart/form-data">
     <h2>Register list of cities from the file:</h2>
     <input type="file" name="file" required> <input type="submit" name="btnImport" value="Import">
</form>

当文件超过 2097152 字节,$file_tmp 变量中未返回路径。有人明白这一点吗? 如果文件大小小于或等于上面给出的大小,则一切正常。 ˙_(ツ)_/˙ PHP 8.2.8 Ubuntu 20.04.6

我尝试过:

$file = file($file_tmp);
但它也不起作用。和以前一样,仅当文件大小为 <= 2097152 bytes, the variable is populated with the path information of the file sent from the form with the POST method.

我也在网站上和网站外寻找答案,但没有得到答案。我什至无法想象自己尝试更多东西会是什么样子。

php size temporary-files
1个回答
0
投票

该问题与 php.ini 文件中定义的 upload_max_filesize 有关。并且通过单个请求可以上传的最大文件数定义为

upload_max_filesize = 20M(默认) => 根据您的要求更改它。

max_file_uploads = 20(这是默认限制) => 根据您的要求更改它。

© www.soinside.com 2019 - 2024. All rights reserved.