Php HTML文件输入导致$\u文件变量混淆

Php HTML文件输入导致$\u文件变量混淆,php,html,Php,Html,我有一个包含多个文件输入的HTML表单,如下所示: <form action="/form/update" method="post" enctype="multipart/form-data"> ... <input type="file" name="FormName[File1]" > <input type="file" name="FormName[File2]" > ... </form> 对于具有数组

我有一个包含多个文件输入的HTML表单,如下所示:

<form action="/form/update" method="post" enctype="multipart/form-data">
    ...
    <input type="file" name="FormName[File1]" >
    <input type="file" name="FormName[File2]" >
    ...
</form>

对于具有数组名称的字段,这是正常行为吗?
$\u文件的结构不应该是
$\u文件['FormName']['File1']['name']
,而不是
$\u文件['FormName']['name']['File1']

“对于具有数组名的字段,这是正常行为吗?”

提交上述表单时,数组$U文件['userfile']、$U文件['userfile']['name']和$U文件['userfile']['size']将被初始化。。。每一个都是一个数字索引数组,包含提交文件的适当值


这同样适用于非数字索引数组。如果不是这样的话,您就无法循环查看
$\u文件的内容,并获得可预测的输出。

为什么要使用
name=“formName[file1]”
而不仅仅是
name=“file1”
?@acupajoe来匹配Yii2后端。如果我遵循模型的命名约定,就可以更容易地将表单数据加载到模型中。你也看到了,这很好。
Array
(
    [Client] => Array
        (
            [name] => Array
                (
                    [File1] => avatar.png
                    [File2] => logo.png
                )

            [type] => Array
                (
                    [File1] => image/png
                    [File2] => image/png
                )

            [tmp_name] => Array
                (
                    [File1] => C:\xampp\tmp\phpE97D.tmp
                    [File2] => C:\xampp\tmp\phpE97E.tmp
                )

            [error] => Array
                (
                    [File1] => 0
                    [File2] => 0
                )

            [size] => Array
                (
                    [File1] => 17719
                    [File2] => 14117
                )

        )

)