SWFUpload与CI不能正确上传识别文件MIME类型解决方法分享

yipeiwu_com6年前PHP代码库
解决方案如下,其它框架雷同。

源代码(/system/libraries/upload.php 199 line)

$this->file_type = preg_replace("/^(.+?);.*$/", "\\1", $_FILES[$field]['type']);

修改成如下:

复制代码 代码如下:

//Edit By Tacker
if(function_exists('mime_content_type')){
$this->file_type = preg_replace("/^(.+?);.*$/", "\\1", mime_content_type($this->file_temp));
}else{
$this->file_type = preg_replace("/^(.+?);.*$/", "\\1", $_FILES[$field]['type']);
}

相关文章

PHP 字符串正则替换函数preg_replace使用说明

1. preg_replace() $msg = preg_replace("/<style>.+<\/style>/is", "", $msg); -----删...

PHP文件上传类实例详解

本文实例讲述了PHP文件上传类。分享给大家供大家参考,具体如下: 这里演示了FileUpload.class.php文件上传类,其中用到了两个常量,可在网站配置文件中定义: defi...

php传值和传引用的区别点总结

php传值:在函数范围内,改变变量值得大小,都不会影响到函数外边的变量值。 PHP传引用:在函数范围内,对值的任何改变,在函数外部也有所体现,因为传引用传的是内存地址。 传值:和copy...

PHP实现ftp上传文件示例

FTP上传是PHP实现的一个常见且非常重要的应用技巧,今天就来与大家分享一下PHP实现FTP上传文件的简单示例。希望对大家的PHP学习能带来一定的帮助。 主要代码如下: functi...

Look And Say 序列php实现代码

比如: 第一个数字是:1。 看着第一个数字你可以说1个1,那么第二个数字就是:11。 看着第二个数字你可以说2个1,即第三个数字是:21。 看着第三个数字你可以说1个2,1个1,即第四个...