我无法检测html5中选择的不同类型的多个文件


I can't detect multiple files with different types selected in html5

这是我的php代码,

if(isset($_FILES['file']['name'][0]) && isset($_FILES['file']['name'][1])){
    echo "1";
}else{
    echo "2";
}

返回2。

这是我的HTML代码,

<input type="file" name="file[]" />
<input type="file" name="file[]" />

我读了其他教程,仍然无法检测文件是否设置。如何检测已设置的文件?我的文件是MP3和Docx格式的

您可以首先使用var_dump并查看$_FILES变量

<?php
var_dump($_FILES);
?>

对于check isset,您可以使用:

<?php
if(isset($_FILES['file'][0]['tmp_name'])){
   echo "ok";
else
  echo "error";
?>

你可以用这段代码从$_FILES中获取数组并保存它

<?php
 foreach($_FILES['file'] as $file){
   var_dump($files);
 }
?>

看到结果后,您可以使用move_uploaded_file将临时文件复制到您的目录中,例如

<?php
 foreach($_FILES['file'] as $file){
   move_uploaded_file($file['tmp_name'],'/your/save/path');
 }
?>

阅读下面的链接

移动上传的文件- php

"如何检测已设置的文件?"你这是什么意思,如果有文件被上传了吗?首先检查错误。这可能有帮助:http://php.net/manual/en/features.file-upload.errors.php