首頁 >後端開發 >PHP問題 >mac php匯出excel亂碼怎麼辦

mac php匯出excel亂碼怎麼辦

藏色散人
藏色散人原創
2021-07-26 09:50:102698瀏覽

mac php匯出excel亂碼的解決方法:先開啟對應的PHP檔案;然後設定「header('Content-Type: application/vnd.ms-excel; charset=gb18030');」即可。

mac php匯出excel亂碼怎麼辦

本文操作環境:macOS10.15系統、PHP7.1版,MacBook Air 2019電腦

mac php匯出excel亂碼怎麼辦?

(PHP)修復mac book 匯出csv xls xlsx 中文亂碼問題

背景:一般情況下,當我們匯出csv (或xls或xlsx)時,都需要通過文件頭來設定文件輸出的文字編碼:

header('Content-Type: application/vnd.ms-excel; charset=utf8');

使用utf8編碼的話,一般來說wps好使,office 就不太好使(office打開會亂碼);

#然後在在很久很久的一段時間裡,我都是用gbk 或gb2312 來解決這個問題:

header('Content-Type: application/vnd.ms-excel; charset=gbk');

今天才發現,在mac book 環境下,設定gbk 編碼其實是不行的。也會亂碼。經過百度一下之後,我才知道要設定為 gb18030

header('Content-Type: application/vnd.ms-excel; charset=gb18030');

關於gb18030的介紹看這裡:https://baike.baidu.com/item/gb18030/3204518


#當然,除了修改檔案頭,還要記得修改echo 出來的內容的編碼,例如輸出標題:

echo mb_convert_encoding(implode(',', array_values($titles)), 'gb18030') . "\n";

 修改後的匯出類別:

https://www.cnblogs.com/tujia/p/11358096.html


完畢。

推薦學習:《PHP影片教學

以上是mac php匯出excel亂碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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