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

squ*_*ter 15 php codeigniter file-upload

我有一个带有文件字段的表单image,但不需要此字段.
当用户不选择表单中的任何文件时,do_upload()始终返回错误.
如何在控制器中执行上载操作之前检查用户是否选择了文件?

Vin*_*abu 38

请用空()

if (empty($_FILES['userfile']['name'])) {
}
Run Code Online (Sandbox Code Playgroud)

  • 它是$ _FILES而不是$ _FILE (8认同)

Ben*_*enM 6

尝试使用 检查文件是否有效is_uploaded_file()。例如:

if(is_uploaded_file($_FILES['userfile']['tmp_name'])) 
{  
   do_upload();
}
Run Code Online (Sandbox Code Playgroud)


Mat*_*nya 5

在您的控制器中,在接收提交的表单的函数上:

if (isset($_FILES['image']['name']) && !empty($_FILES['image']['name'])) {
    // do_upload

}
Run Code Online (Sandbox Code Playgroud)

  • isset是多余的。从[docs](http://php.net/manual/en/function.empty.php):`empty()本质上等同于!isset($ var)||。$ var == false` (2认同)