我正在使用PHP版本5.3.5-1ubuntu7.11。我使用以下代码允许用户选择并上传多个文件。
HTML
<form action="uploadFiles.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file[]" multiple="multiple"/></br>
<input type="submit" name="submit[]" value="submit" />
</form>
uploadFiles.php
<?php
if(isset($_POST['submit']))
{
if ($_FILES["file[]"]["error"] > 0)
{
echo "Error: " . $_FILES["file[]"]["error"] . "<br>";
}
else
{
$numFilesUploaded=count($_FILES['file']['name']);
echo "No. files uploaded : ".$numFilesUploaded."<br><br>";
for ($inc=0; $inc<$numFilesUploaded; ++$inc){
echo "File " . $inc . ": " . $_FILES["file"]["name"][$inc] . "<br>";
echo "Upload: " . $_FILES["file"]["name"][$inc] . "<br>";
echo "Type: " . $_FILES["file"]["type"][$inc] . "<br>";
echo "Size: " . ($_FILES["file"]["size"][$inc] / 1024) . " kB<br>";
echo "Stored in: " . $_FILES["file"]["tmp_name"][$inc];
echo "<br><br>";
}
}
}
?>
如果文件很小,发布工作正常。但是,如果我尝试上传两个文件,每个文件大小为11.3 MB,则帖子会失败。插入
print_r($_POST);
在uploadFiles.php开头的导致
Array ( )
(我可以单独上传每个。)我可以理解这是默认的php.ini的情况,但是当我编辑php.ini并将upload_max_filesize和post_max_size设置为30 MB时仍然如此。我在我的硬盘上搜索了php.ini的每个实例,并在每个实例上进行了这些更改。我仍然得到一个空数组发布到PHP脚本。