首頁 >後端開發 >PHP問題 >如何解決php下載中文檔案亂碼問題

如何解決php下載中文檔案亂碼問題

藏色散人
藏色散人原創
2020-11-17 09:31:022936瀏覽

php下載中文檔案亂碼的解決方法:1.頁面編碼改成utf8;2、對中文url進行urlencode編碼,並依照UA檢測,實現差異下載即可。

如何解決php下載中文檔案亂碼問題

推薦:《PHP影片教學

PHP Header下載檔案在IE檔案名稱中文亂碼問題

簡介:解決PHP Header下載檔案在IE檔案名稱中文亂碼有兩種常見的,一種是把頁面編碼改成utf8,另一種是對中文url進入urlencode編碼,根據UA檢測,區別下載,就可以解決了$filename = "中文.

解決PHP Header下載檔在IE檔名中文亂碼有兩種常見的,一種是把頁面編碼改成utf8,另一種是對中文url進入urlencode編碼,根據UA檢測,區別下載,就可以解決了

$filename = "中文.txt";
$ua = $_SERVER["HTTP_USER_AGENT"];
$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 . '"');
}

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

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