2015-06-23 17:09:57 5090次浏览 2条回答 0 悬赏 0 金钱

上传规则只有file。
问题:有些文件能上传,有些无法上传。
问题已解决:不支持中文文件名的文件上传。
如图

最佳答案

  • lilongsy 发布于 2015-06-24 10:32 举报

    看着多了个空格。加上引号,或者把空格去掉,应该就可以了。

    3 条回复
    回复于 2015-06-24 14:49 回复

    同样一个文件,如果是-中文名-则报错,如果是-英文名-则成功。

    回复于 2015-06-24 14:53 回复

    PHP编码是UTF-8,其中原因可能是因为操作系统是GBK的原因!

    估计操作系统字符集是gbk。因为php代码保存为utf-8格式的,在给文件名命名时会出现乱码的情况,所以可以用iconv()函数将原本的utf-8格式的文件名转换为gbk格式的。

    //iconv()函数是关键
      if(move_uploaded_file($_FILES["upfile"]["tmp_name"],iconv("UTF-8","gb2312",$name))){//处理...}
    
    回复于 2015-06-24 15:17 回复

    OK,回答正确,问题已解决。受教了!

    , 觉得很赞
您需要登录后才可以回答。登录 | 立即注册
ZendLaravelYii
总监

ZendLaravelYii 浙江杭州

注册时间:2015-06-16
最后登录:2021-01-20
在线时长:21小时52分
  • 粉丝9
  • 金钱1876
  • 威望20
  • 积分2286

热门问题