【发布时间】:2014-06-14 10:45:52
【问题描述】:
编辑
我测试了它的大小与数量,限制它的是文件的数量,而不是大小。我能够上传 1 个比所有 23 个文件加起来还大的文件。
原帖
我已经在多台服务器上对此进行了测试,它们显示相同的内容,$_FILES 数组最多只能包含 15 个上传的文件,其余的是具有空值的数组。我做了一个var_dump 并得到了以下结果:
/** THIS IS WHAT FILES 1-15 LOOK LIKE **/
["file15"]=> array(5) {
["name"]=> string(14) "myimage.jpg"
["type"]=> string(10) "image/jpeg"
["tmp_name"]=> string(14) "/tmp/php5LkG6k"
["error"]=> int(0)
["size"]=> int(86267)
}
/** THIS IS WHAT FILES 16-23 LOOK LIKE **/
["file16"]=> array(5) {
["name"]=> string(0) ""
["type"]=> string(0) ""
["tmp_name"]=> string(0) ""
["error"]=> int(4)
["size"]=> int(0)
}
这是我的代码:
<?php
try
{
if ( $_SERVER[ "REQUEST_METHOD" ] === "POST" )
{
foreach ( $_FILES as $file )
{
//This isn't called until file 16
if ( $file[ "error" ] !== 0 ) throw new Exception( "Error: " . $file[ "name" ] );
$index = 0;
while ( file_exists( "/var/www/wp-content/uploads/" . $index . $file[ "name" ] ) ) $index++;
$name = "/var/www/wp-content/uploads/" . $index . $file[ "name" ];
move_uploaded_file( $file[ "tmp_name" ], $name );
}
}
}
catch (Exception $e){ var_dump( $e ); }
?>
<form action="" enctype="multipart/form-data" method="post">
<input type="text" name="p" value="" />
<input type="file" name="file1" />
<input type="file" name="file2" />
<input type="file" name="file3" />
<input type="file" name="file4" />
<input type="file" name="file5" />
<input type="file" name="file6" />
<input type="file" name="file7" />
<input type="file" name="file8" />
<input type="file" name="file9" />
<input type="file" name="file10" />
<input type="file" name="file11" />
<input type="file" name="file12" />
<input type="file" name="file13" />
<input type="file" name="file14" />
<input type="file" name="file15" />
<input type="file" name="file16" />
<input type="file" name="file17" />
<input type="file" name="file18" />
<input type="file" name="file19" />
<input type="file" name="file10" />
<input type="file" name="file21" />
<input type="file" name="file22" />
<input type="file" name="file23" />
<input type="file" name="file24" />
<input type="file" name="file25" />
<input type="file" name="file26" />
<input type="file" name="file27" />
<input type="submit" name="submit" value="submit" />
</form>
如何增加允许的图片数量?
【问题讨论】:
-
@AdrianPreuss 不,不是大小,而是数量
-
同理。如果您上传 30 个文件 - 500 MB,合乎逻辑的结论?
-
@AdrianPreuss 我已经测试了大小,我可以上传 1 个比我的 23 个文件更大的文件。我排除了这一点。我故意选择了很小的(每个 30K)文件进行测试以排除这种情况。
标签: php file-upload