Codeigniter's文件上传"allowed_types"选项不能正常工作


Codeigniter's file upload "allowed_types" option does not work properly

    $this->load->library('upload');
    $file_config = array(
        'upload_path' => $dir,
        'allowed_types' => 'csv',
        'file_name' => strtoupper($this->input->post('class_name')) . '.csv',
        'overwrite' => TRUE,
        'max_size' => 2048,
        'max_filename' => 128,
        'remove_spaces' => FALSE
    );
    $this->upload->initialize($file_config);
    // DEBUG
    if (!$this->upload->do_upload('file'))
        echo $this->upload->display_errors();
    else
        echo 'UPLOADED.';

由于某种原因,如果我输入'allowed_types' => '*',,它接受它并且工作得很好。但如果我只想要csv文件:'allowed_types' => 'csv',,当我上传csv文件时,它输出一个错误:The filetype you are attempting to upload is not allowed.

我怎么能解决这个问题,而不让所有类型的文件上传*,而不是只让csv文件上传?

Codeigniter文档说要使用文件的MIME类型,CSV的MIME类型是"text/CSV ",所以使用它而不是" CSV "。http://ellislab.com/codeigniter/user-guide/libraries/file_uploading.html