0

$_FILES 数组:

HTML:

<input type="file" name="smth[]" id="smth1" />
<input type="file" name="smth[]" id="smth1" />
<input type="file" name="smth[]" id="smth1" />

如何检查文件数组是否为空?(未选择文件)。

PHP:

if (CHECK) {

...operating with $_FILES...

}

谢谢您的回答。

4

4 回答 4

1
function any_uploaded($name) {
  foreach ($_FILES[$name]['error'] as $ferror) {
    if ($ferror != UPLOAD_ERR_NO_FILE) {
      return true;
    }
  }
  return false;
}

if (any_uploaded('smth')) {
  // ..operating with $_FILES...
}
于 2012-04-06T21:04:21.567 回答
0

就像是

if(isset($_FILES) && count($_FILES) > 0){
...

?

于 2012-04-06T20:59:06.500 回答
0

实际上,您需要遍历 $_FILES 并检查错误键中的 UPLOAD_ERR_NO_FILE 。有关更多信息,请参见http://php.net/manual/en/features.file-upload.errors.php

除此之外,还有无数种方法可以检查数组是否为空!即空()或计数()

于 2012-04-06T21:00:49.837 回答
0

只需检查文件名:

foreach($_FILES as $key => $val){
  if(strlen($_FILES[$key]['name']) > 0){
    //here we got a file from user
  }else{
    //no files received
  }
}
于 2014-09-08T14:38:20.993 回答