Codeigniter检查文件的存在性返回null

时间:2018-01-05 07:00:53

标签: php codeigniter

我要在我的项目页面中上传视频。在View中编码,

<div class="form-group">
                <label for="p-in" class="col-md-4 label-heading"><?php echo lang("ctn_502") ?></label>
                <div class="col-md-8">
                    <input type="file" class="form-control" name="video_file">
                </div>
</div>

控制器中的代码,

$videoid=0;
if(isset($_FILES['video_file']['size']) && $_FILES['video_file']['size'] > 0) {
        $this->load->library("upload");
        // Upload image
        $this->upload->initialize(array(
           "upload_path" =>  $this->settings->info->upload_path,
           "overwrite" => FALSE,
           "max_filename" => 300,
           "encrypt_name" => TRUE,
           "remove_spaces" => TRUE,
           "allowed_types" => "avi|mp4|webm|ogv|ogg|3gp|flv",
           "max_size" => $this->settings->info->file_size,
            )
        );

        if ( ! $this->upload->do_upload('video_file'))
        {
                $error = array('error' => $this->upload->display_errors());

                $this->template->jsonError(lang("error_97") . "<br /><br />" .
                     $this->upload->display_errors() . "<br />" . mime_content_type($_FILES['video_file']['tmp_name']));
        }

        $data = $this->upload->data();

        $videoid = $this->feed_model->add_video(array(
            "file_name" => $data['file_name'],
            "file_type" => $data['file_type'],
            "extension" => $data['file_ext'],
            "file_size" => $data['file_size'],
            "userid" => $this->user->info->ID,
            "timestamp" => time()
            )
        );
    }

if(empty($videoid == 0)) {
        $this->template->jsonError(lang("error_98"));
    }

但条件if(isset($_FILES['video_file']['size']) && $_FILES['video_file']['size'] > 0) {总是返回null。我无法解决我的代码中的错误。任何人都可以帮忙解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

使用!empty

if(!empty($_FILES['video_file']['name'])){ }