我很难使用$_FILES
我想检查它是否为空,如果它不是空的,则不应尝试上传文件。我该如何检查?
答案 0 :(得分:31)
if($_FILES["file"]["error"] != 0) {
//stands for any kind of errors happen during the uploading
}
也有
if($_FILES["file"]["error"] == 4) {
//means there is no file uploaded
}
答案 1 :(得分:13)
这应该有效
if ( ! empty($_FILES)) {...}
答案 2 :(得分:9)
其他答案对我不起作用。所以我发布了我的解决方案:
if($_FILES['theFile']['name']=='')
{
//No file selected
}
答案 3 :(得分:6)
您可以使用UPLOAD_ERR_NO_FILE值:
function isset_file($file) {
return (isset($file) && $file['error'] != UPLOAD_ERR_NO_FILE);
}
if(isset_file($_FILES['input_name'])) {
// It's not empty
}
已更新:由于发送 $ _ FILES [' input_name'] 可能会发出通知
function isset_file($name) {
return (isset($_FILES[$name]) && $_FILES[$name]['error'] != UPLOAD_ERR_NO_FILE);
}
if(isset_file('input_name')) {
// It's not empty
}
答案 4 :(得分:2)
这个问题是重复的,但您的答案是is_uploade_file()函数。
答案 5 :(得分:1)
if(!empty($_FILES['myFileField'])) {
// file field is not empty..
} else {
// no file uploaded..
}
答案 6 :(得分:0)
要检查类型文件的输入是否为空,您必须采用$_FILES
数组中的任何一个,并对照空数组进行检查。我在上面看到的所有内容都是针对无法使用的空字符串进行检查。
示例:
if($_FILES["your_field_name"]["size"] == [' '])
{
Perform your validation here•
}
我希望这会有所帮助。