关于Codeigniter上传文件类型的问题
$config ['allowed_types'] = 'xls|xlsx|xl';
在我上传一个已.xls后缀的Excel时一直提示文件类型不正确,可是xls明明在allowed_types里面
在上传时我首先 print_r($_FILES ) 结果如下:
Array ( [userfile] => Array ( [name] => Template.xls[type] => application/kset [tmp_name] => C:\Windows\temp\phpACC.tmp [error] => 0 [size] => 7680 ) )
可以看到这个文件type是application/kset这种类型的 之所以报错就是因为这种类型的Excel不在一个文件内
application/config/mimes.php找到xls文件类型的数组
于是修改成如下:
'xls' => array('application/excel', 'application/vnd.ms-excel', 'application/msexcel','application/octet-stream','application/kset'),
有时候上传图片失败,发现图片类型是application/octet-stream,于是修改
'jpeg' => array('image/jpeg', 'image/pjpeg','application/octet-stream'),
'jpg' => array('image/jpeg', 'image/pjpeg','application/octet-stream'),
'jpe' => array('image/jpeg', 'image/pjpeg','application/octet-stream'),
'png' => array('image/png', 'image/x-png','application/octet-stream'),
最后:不同的浏览器对文件的解释也不同 最好在不同浏览器打印 $_FIELS 看结果 把对应的type添加进mimes.php的数组即可