php上传文件中文文件名乱码

这几天在windows下安装了XAMPP,准备初步学习一下php的相关内容。这几天接触到了php上传文件,但是出现了一个郁闷问题,我准备上传一个excel文件,但是如果文件名是中文名就会报错。

一来二去很是郁闷,后来仔细想了想应该是文件编码的问题,我写的php文件使用的是UTF-8编码,如果没有猜错APACHE处理用的应该是GBK(当然现在我无法确定,希望高手给与指教),想明白了这个问题,就去查找相关的教程了,索性找到了iconv这个函数。

函数原型:string iconv ( string in_charset, string out_charset, string str )

使用例子:$content = iconv(”GBK”, “UTF-8″, $content);这个例子的作用就是将$content从GBK转换成UTF-8编码,乱码问题关键代码:

  1. $name=iconv("UTF-8","gb2312"$name); 
  2. move_uploaded_file($tmpname$this->final_file_path);       
  3. $name=iconv("gb2312","UTF-8"$name); 

除了这样来解决上传文件中文乱码问题,我们还可以把上传文件重新命名即可,例:

  1. $sFileName = "sda.php"
  2. $sOriginalFileName = $sFileName
  3. $sExtension = s str($sFileName, (strrpos($sFileName'.') + 1));//找到扩展名 
  4. $sExtension = strtolower($sExtension); 
  5. $sFileName = date("YmdHis").rand(100, 200).".".$sExtension//这样就是我们的新文件名了,全数字的不会有乱码了哦。 
波比源码 – 精品源码模版分享 | www.bobi11.com
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站源码并不保证全部能正常使用,仅供有技术基础的人学习研究,请谨慎下载
8. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

波比源码 » php上传文件中文文件名乱码

发表评论

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系站长
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡