codeigniter解决只能上传图片问题

打开 CodeIgniter 的代码( system/libraries/Upload.php )
/**
* Verify that the filetype is allowed
*
* @access public
* @return bool
*/
function is_allowed_filetype()
{
    if (count($this->allowed_types) == OR ! is_array($this->allowed_types))
    {
        $this->set_error('upload_no_file_types');
        return FALSE;
    }
 
    $image_types array('gif''jpg''jpeg''png''jpe');
 
    foreach ($this->allowed_types as $val)
    {
        $mime $this->mimes_types(strtolower($val));
 
        // Images get some additional checks
        if (in_array($val$image_types))
        {
            if (getimagesize($this->file_temp) === FALSE)
            {
                return FALSE;
            }
        }
 
        if (is_array($mime))
        {
            if (in_array($this->file_type, $mimeTRUE))
            {
                return TRUE;
            }
        }
        else
        {
            if ($mime == $this->file_type)
            {
                return TRUE;
            }
        }
    }
    
    return FALSE;

}

我们这里要解决的问题是让它能接受任何类型
它判断了如果没有设置 allowed_types 时,它也会返回 false,这个代码块改成如下

if (count($this->allowed_types) == OR ! is_array($this->allowed_types))
{
    // $this->set_error('upload_no_file_types');
    // return FALSE;
    return TRUE;
}


你可能感兴趣的:(codeigniter解决只能上传图片问题)