日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

如何在PHP下載文件名中解決亂碼

瀏覽:208日期:2024-01-15 18:28:01

通過把Content-Type設置為application/octet-stream,可以把動態生成的內容當作文件來下載,相信這個大家都會。那么用Content-Disposition設置下載的文件名,這個也有不少人知道吧。基本上,下載程序都是這么寫的:

<?php$filename = “document.txt”;header(’Content-Type: application/octet-stream’);header(’Content-Disposition: attachment; filename=’ . $filename);print “Hello!”;?>這樣用瀏覽器打開之后,就可以下載document.txt。

但是,如果$filename是UTF-8編碼的,有些瀏覽器就無法正常處理了。比如把上面那個程序稍稍改一下:

<?php$filename = “中文 文件名.txt”;header(’Content-Type: application/octet-stream’);header(’Content-Disposition: attachment; filename=’ . $filename);print “Hello!”;?>把程序保存成UTF-8編碼再訪問,IE6下載的文件名就會亂碼。 FF3下下載的文件名就只有“中文”兩個字。Opera 9下一切正常。

輸出的header實際上是這樣子:

Content-Disposition: attachment; filename=中文 文件名.txt其實按照RFC2231的定義,多語言編碼的Content-Disposition應該這么定義:

Content-Disposition: attachment; filename*=”utf8”%E4%B8%AD%E6%96%87%20%E6%96%87%E4%BB%B6%E5%90%8D.txt”即:

filename后面的等號之前要加 *filename的值用單引號分成三段,分別是字符集(utf8)、語言(空)和urlencode過的文件名。最好加上雙引號,否則文件名中空格后面的部分在Firefox中顯示不出來注意urlencode的結果與php的urlencode函數結果不太相同,php的urlencode會把空格替換成+,而這里需要替換成%20經過試驗,發現幾種主流瀏覽器的支持情況如下:

IE6 attachment; filename=”<URL編碼之后的UTF-8文件名>”FF3 attachment; filename=”UTF-8文件名”attachment; filename*=”utf8”<URL編碼之后的UTF-8文件名>”O9 attachment; filename=”UTF-8文件名”Safari3(Win) 貌似不支持?上述方法都不行

這樣看來,程序必須得這樣寫才能支持所有主流瀏覽器:

<?php$ua = $_SERVER['HTTP_USER_AGENT'];$filename = “中文 文件名.txt”;$encoded_filename = urlencode($filename);$encoded_filename = str_replace(”+”, “%20″, $encoded_filename);header(’Content-Type: application/octet-stream’);if (preg_match(”/MSIE/”, $ua)) { header(’Content-Disposition: attachment; filename=”‘ . $encoded_filename . ‘”‘);} else if (preg_match(”/Firefox/”, $ua)) { header(’Content-Disposition: attachment; filename*=”utf8’” . $filename . ‘”‘);} else { header(’Content-Disposition: attachment; filename=”‘ . $filename . ‘”‘);}print ‘ABC’;?>

標簽: PHP
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品13p| 亚洲欧美视频| 国产日韩欧美中文在线| 综合国产精品| 综合国产精品| 日韩在线电影| 亚洲三级网址| 日韩一区二区三区四区五区| 蜜臀av性久久久久蜜臀aⅴ四虎 | 中文字幕成人| 亚洲精品美女91| 日本aⅴ亚洲精品中文乱码| 日本va欧美va瓶| 国产精品自在| 久久精品天堂| 午夜影院一区| 91九色精品| 亚洲三级在线| 国产精品日本一区二区三区在线 | 国产精品丝袜在线播放| 国产一区二区三区四区五区| 久久久久黄色| 日韩视频网站在线观看| 国产综合精品一区| 美女国产精品| 91嫩草精品| 久久久久久网| 一区视频在线| 日韩国产一区二| 国产一区二区三区四区二区 | 日韩中文字幕不卡| 国产探花一区| 蜜臀国产一区| 亚洲女人av| 亚洲精品裸体| 高清av一区| 亚洲精品国产偷自在线观看| 天堂va在线高清一区| 久久久久伊人| 婷婷久久一区| 欧美日韩91| 日本高清不卡一区二区三区视频| av不卡免费看| 国产日韩欧美一区二区三区| 亚洲性色av| 男女激情视频一区| 另类小说一区二区三区| 久久一区二区三区喷水| 综合在线一区| 国产精品99在线观看| 日韩视频在线一区二区三区 | 国产精品午夜一区二区三区| 六月婷婷综合| 亚洲精品日本| 精品三级久久| 欧美日本三区| 欧美日中文字幕| 无码日韩精品一区二区免费| 国产999精品在线观看| 一本色道久久精品| 国产精品大片免费观看| 国产一区亚洲| 国产欧美一区二区精品久久久| 久久国产毛片| 国产精品传媒麻豆hd| 中文一区在线| 三上亚洲一区二区| 日韩精品久久理论片| 亚洲韩日在线| 美女精品视频在线| 视频一区二区三区在线| 日韩精品不卡一区二区| 中文字幕一区二区三区在线视频| 人人草在线视频| 国产欧美高清| 蜜桃视频一区二区| 99精品视频在线| 免费在线成人| 手机精品视频在线观看| 成午夜精品一区二区三区软件| 综合欧美亚洲| 欧美精品一卡| 国产欧洲在线| 国产精品白浆| 亚洲三级在线| 午夜亚洲一区| 久久久久中文| 国产精久久久| 日韩黄色av| 日本欧洲一区二区| 久久亚洲精品中文字幕蜜潮电影| 国产极品嫩模在线观看91精品| 亚洲一二三区视频| 亚洲深夜影院| 欧美 日韩 国产精品免费观看| 精品久久国产一区| 国产精品亚洲综合色区韩国| 亚洲欧美在线综合| 国产亚洲毛片在线| 亚洲小说欧美另类婷婷| 日韩深夜视频| 另类欧美日韩国产在线| 青草av.久久免费一区| 亚洲午夜久久| 日韩午夜在线| 国产二区精品| re久久精品视频| 欧美1级日本1级| 99精品综合| 欧美日韩一二三四| 欧美一级精品| 99成人超碰| 亚洲高清久久| 久久中文字幕二区| 极品日韩av| 欧美在线亚洲综合一区| 在线日韩欧美| 亚洲性色视频| 婷婷国产精品| 国产一区欧美| 午夜免费一区| 黄色av一区| 亚洲欧美日韩国产| 男人的天堂久久精品| 蜜臀久久久久久久| 午夜一区在线| 日韩在线一区二区| 综合一区二区三区| 日韩高清一区二区| 国产午夜一区| 麻豆精品新av中文字幕| 狠狠久久伊人| 国产欧美一区二区三区精品酒店| 成人在线视频免费| 亚洲日本网址| 欧美日韩激情| 蜜桃av一区二区三区电影| 久热re这里精品视频在线6| 日韩专区在线视频| 日韩av一区二区三区四区| 久久精品99国产精品| 国产精品99久久免费| 首页国产精品| 999久久久亚洲| 久色成人在线| 久久激情五月婷婷| 久久精品免视看国产成人| 国产精品蜜芽在线观看| 999久久久亚洲| 免费看日韩精品| 国产亚洲欧美日韩精品一区二区三区 | 精品九九在线| 日韩国产欧美| 亚洲女同中文字幕| 蜜臀久久久久久久| 久久av超碰| 不卡福利视频| 美女精品在线观看| 日韩av一区二区三区四区| 国产激情欧美| 久久狠狠婷婷| 亚洲欧洲美洲国产香蕉| 国产精品777777在线播放| 性感美女一区二区在线观看| 视频一区二区中文字幕| 国产乱码精品一区二区亚洲| 黑森林国产精品av| 日韩午夜av| 国产精品男女| 久久在线免费| 日韩国产欧美三级| av在线资源| 美国三级日本三级久久99| 欧美激情久久久久久久久久久| 亚洲精品一区三区三区在线观看| 在线观看一区| 狂野欧美性猛交xxxx| 欧美日韩第一| 国产精品啊v在线| 红桃视频亚洲| 精品一区二区男人吃奶| 国产精品美女久久久| 国产精品网在线观看| 欧美另类综合| 欧美精品成人| 日韩中文字幕亚洲一区二区va在线| 精品欧美日韩精品| 日韩在线卡一卡二| 国产99在线| 日本午夜精品| 免费观看久久av| 国产精品亚洲成在人线| 九九综合九九| 精品一区二区三区免费看| 麻豆成人在线| 日韩啪啪电影网| 日本不卡一区二区三区| 日韩欧美中文| 国产精品三p一区二区| 亚洲欧美日韩综合国产aⅴ|