php文件下载IE文件名乱码问题
一直用chrome浏览器,没发现问题。今天用ie6,发现文件下载时文件名乱码,ie下迅雷下载文件名也是乱码。网上查了下说在ie下需要使用urlencode编码一下,我试了下
结果用ie下载还是乱码。php文件本身是gbk/gb2312编码,于是我先将$file_name转换成utf-8编码再进行urlencode 这样使用ie下载就没问题了,难道urlencode只能对utf-8进行转义编码?还有就是获取远程文件的大小问题,php中的filesize函数只能对本地文件进行处理,处理远程文件会失败并发出一条警告,并且在windows平台传入的参数必须是gbk/gb2312编码,使用utf-8编码将无法访问系统中的资源。
在网上找了四种获取远程文件大小的方法,多谢前辈们的分享,记录一下:
方法一:header
这里可以根据Content-Length直接获取大小了。
方法二:curl方法三:fsock
方法四:file_get_contents