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

pdkcd3nj  于 2023-03-21  发布在  PHP
关注(0)|答案(9)|浏览(146)

我很难使用$_FILES
我想检查文件上传字段是否为空,然后应用一个条件,如果文件上传为空,那么脚本不会尝试上传文件。我如何强制执行这一点?

yrefmtwq

yrefmtwq1#

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
}
pkmbmrz7

pkmbmrz72#

这个应该可以

if ( ! empty($_FILES)) {...}
brccelvz

brccelvz3#

其他的答案对我不起作用。所以我贴出了我的解决方案:

if($_FILES['theFile']['name']=='')
{
    //No file selected
}
mwg9r5ms

mwg9r5ms4#

以下是对我有效的方法:

if ($_FILES['theFile']['tmp_name']!='') {
    // do this, upload file
} // if no file selected to upload, file isn't uploaded.
9w11ddsr

9w11ddsr5#

您可以使用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'] 可能会抛出 Notice

function isset_file($name) {
    return (isset($_FILES[$name]) && $_FILES[$name]['error'] != UPLOAD_ERR_NO_FILE);
}

if(isset_file('input_name')) {
    // It's not empty
}
ybzsozfc

ybzsozfc6#

这个问题是重复的,但你的答案是is_uploade_file()函数。

trnvg8h3

trnvg8h37#

if(!empty($_FILES['myFileField'])) {
    // file field is not empty..
} else {
    // no file uploaded..
}
4dc9hkyq

4dc9hkyq8#

要检查file类型的输入是否为empty,您必须获取$_FILES数组中的任何一个,并将其与空数组进行检查。我在上面看到的所有内容都是检查空字符串,这将不起作用。示例:

if($_FILES["your_field_name"]["size"] == [' '])
{
Perform your validation here•
}

希望这能帮上忙。

iq0todco

iq0todco9#

通过应用条件语句来检查文件内容是否为空(即您没有在字段中选择任何文件)。您可以这样做

if($_FILE['image']['size'][0] ==0){
     echo "No file selected";
}else{
     echo "You have select image";
}

希望这会有所帮助…
代码解释:它检查输入的文件名和数组索引0处的大小是否等于零

相关问题