日期:2014-05-17  浏览次数:20413 次

======PHP下载功能======

<?php
header('Content-type: video/mpeg4');//输出的类型
header('Content-Disposition: attachment; filename="文件名.mp4"'); //下载显示的名字
readfile('文件名.mp4');
?>

这是一段我所在用的下载代码。
但是,当文件名为中文的时候,下载框和下载后文件显示的名字是乱码。
是PHP在这个下载功能不识别中文吗?

应该怎么修改这个PHP下载功能,才能够正常下载带有中文名的文件?
php header 下载

------解决方案--------------------
是否显示乱码与用户的操作系统的默认字符集有关
------解决方案--------------------
header("Content-type: text/html; charset=utf-8");

------解决方案--------------------
先把读取到的文件名进行url_encode转码然后再执行下载程序
------解决方案--------------------
楼上两位是来搅局的    哈哈哈~  
------解决方案--------------------
你看看 你的php文件 格式 ,  文件格式和 代码的 编码格式得一致 不然就会乱码  

你的php文件是 utf8的话 你加上这局 header("Content-type: text/html; charset=utf-8");最顶部 
------解决方案--------------------
可以将你的下载文件名字iconv()转码下试试