PHP $ _FILES多文件上传问题

hom*_*rrr 7 php forms upload file-upload

我在PHP中上传多个文件时遇到一些问题,

我有这个HTML格式:

<form method="post" action="upload.php" enctype="multipart/form-data">
    <input type="file" name="myfile[]"  />
    <input type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

这是upload.php:

<?php print_r( $_FILES ); ?> 
Run Code Online (Sandbox Code Playgroud)

当我发送文件时,它告诉我这个:

 Array
(
[myfile] => Array
    (
        [name] => Array
            (
                [0] => Krw_Qe4QKmI.mp3
            )

        [type] => Array
            (
                [0] => 
            )

        [tmp_name] => Array
            (
                [0] => 
            )

        [error] => Array
            (
                [0] => 1
            )

        [size] => Array
            (
                [0] => 0
            )

    )

 )
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.

当我将表单升级到此表单时问题开始:

<form method="post" action="upload.php" enctype="multipart/form-data">
    <input type="file" name="myfile[]"  />
    <input type="file" name="myfile[]"  />
    <input type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

现在,当我发送2个文件时,它显示了这个:

Array
(
)
Run Code Online (Sandbox Code Playgroud)

那么,这里的问题是什么?谢谢你,莫尔.

nev*_*ind 1

这里有很多建议。我会尝试一下。这是基于@Pekka 的评论。

我看到您正在使用 mp3 进行测试,这可能超出了 PHP 上传限制。这是因为在第一个示例中,您实际上有一个上传错误代码 1: The uploaded file exceeds the upload_max_filesize directive in php.ini.。所以即使你第一次上传也不起作用。成功上传的错误代码始终为 0。

使用upload_max_filesize = 10M(或20M, 或300M; 小心这一点M- 这意味着兆字节- 省略你的 php.ini ,会带来很多麻烦。

我建议使用较小的文件进行测试,因为我发现您的上传限制为 2M。

进一步阅读