我有一个包含多个文件输入的HTML表单,如下所示:
<form action="/form/update" method="post" enctype="multipart/form-data">
...
<input type="file" name="FormName[File1]" >
<input type="file" name="FormName[File2]" >
...
</form>
但是,当我提交表单时,$_FILES
php变量看起来像键混合了。
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
)
)
)
对于具有数组名称的字段,这是正常行为吗? $_FILES
的结构不应该是$_FILES['FormName']['File1']['name']
,而不是$_FILES['FormName']['name']['File1']
吗?
答案 0 :(得分:1)
&#34;对于具有数组名称的字段,这是正常行为吗?&#34;
提交上述表单后,数组$ _FILES [&#39; userfile&#39;],$ _FILES [&#39; userfile&#39;] [&#39; name&#39;]和$ _FILES [&#39; userfile&#39;] [&#39; size&#39;]将被初始化...其中每个都将是提交文件的适当值的数字索引数组。
同样适用于非数字索引的数组。如果不是这样的话,你就无法遍历$_FILES
的内容并获得可预测的输出。