如何检查文件字段是否为空?

Moh*_*san 16 php validation file-upload input-field

我很难用 $_FILES

我想检查它是否为空,如果它不是空的,那么它不应该尝试上传文件.我该如何检查?

Moh*_*san 34

if($_FILES["file"]["error"] != 0) {
//stands for any kind of errors happen during the uploading
} 
Run Code Online (Sandbox Code Playgroud)

还有

if($_FILES["file"]["error"] == 4) {
//means there is no file uploaded
}
Run Code Online (Sandbox Code Playgroud)


Dra*_*kic 13

这应该工作

if ( ! empty($_FILES)) {...}
Run Code Online (Sandbox Code Playgroud)


Mag*_*eek 10

其他答案对我不起作用.所以我发布我的解决方案:

if($_FILES['theFile']['name']=='')
{
    //No file selected
}
Run Code Online (Sandbox Code Playgroud)


小智 7

这对我有用:

if ($_FILES['theFile']['tmp_name']!='') {
    // do this, upload file
} // if no file selected to upload, file isn't uploaded.
Run Code Online (Sandbox Code Playgroud)


lom*_*vid 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
}
Run Code Online (Sandbox Code Playgroud)

更新:由于发送$ _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
}
Run Code Online (Sandbox Code Playgroud)