我创建了一个包含3 <input type="file"/>
我看到我得到了一个array(name=>"")
的数组。
所以我改为if ($_FILE["myfilename"]["name"]=="")
。
这有效,但对我来说似乎很不寻常。
我想知道是否有更好的方法来检查是否设置了文件输入?
答案 0 :(得分:13)
有:is_uploaded_file()
。在处理上传的文件时,出于安全原因,您应该始终使用它(及其表兄move_uploaded_file()
)。
答案 1 :(得分:4)
假设您使用最近的PHP(4.2+),最好的方法是检查:
$_FILE['myfilename']['error'] === UPLOAD_ERR_OK
如果确实如此,则上传工作正常,您可以看到其他可能值列表here
答案 2 :(得分:1)
您可以使用empty检查变量是否为空,但Pekka的解决方案最好是这样
if (empty($_FILES["myfilename"]["name"]))
如果您正在检查是否设置了变量,则可以使用isset函数
答案 3 :(得分:0)
试试这个:
if($_FILES["uploadImg"]['name'][0] != ''){
//echo 'file attached';
}else{
//echo 'no file attached';
}
这对我有用......
答案 4 :(得分:0)
您可以尝试以下方法:
if($_FILES['myfilename']['size'] > 0 ) {
}
else{
echo 'File is not uploaded . . .';
}