首頁 >後端開發 >PHP問題 >如何解決php ie下載亂碼的問題

如何解決php ie下載亂碼的問題

藏色散人
藏色散人原創
2020-08-28 09:08:362222瀏覽

php ie下載亂碼的解決方法:先開啟對應的PHP檔案;然後在檔案名稱輸出時,將檔案名稱轉換成gb2312編碼,程式碼如「$name = iconv("utf-8", "gb2312",$name);」。

如何解決php ie下載亂碼的問題

推薦:《PHP影片教學

#網站開發中,常常會碰到下載文件功能,某些需求就要下載檔名為中文。

一般輸出中文都會用UTF-8編碼,但IE瀏覽器的一些版本轉換下載檔名時,並不會使用UTF-8編碼,導致檔名亂碼。測試了名為「中文.txt」的檔案下載功能,在IE 11瀏覽器的下載如下:


在其他瀏覽器上,例如chrome,火狐,360都沒有問題:


嘗試了一下,在檔案名稱輸出時,將檔案名稱轉換成gb2312編碼,問題就解決了,程式碼如下:

$name = '中文.txt';
//转换文件名编码
$name = iconv("utf-8","gb2312",$name);
Header("Content-Disposition: attachment; filename=".$name);

效果截圖如下:



#

以上是如何解決php ie下載亂碼的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn