您好,登錄后才能下訂單哦!
了解怎么解決php導出excel亂碼的問題?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
php導出excel亂碼的解決辦法:1、設置PHP文件編碼為UTF8,并指定header的編碼為UTF8;2、將數據庫編碼設置為UTF8;3、使用table來進行布局。
解決PHP使用CVS導出Excel亂碼問題
在使用PHP生成CVS文件后通過Excel打開發現中文全部變成了亂碼,之前在我本地win08通過WPS正常的,但上傳到服務器Linux在服務器上測試出現了亂碼
一開始以后是Linux的問題但后來測試時發現是WPS的問題(猜測可以是WPS對編碼做了處理,服務器上通過Excel打開也是亂碼的)
因為我的PHP文件和數據庫里的編碼都是UTF-8格式而且使用文本編輯器打開的編碼也是UTF-8的
PHP代碼
導出的CVS文檔,使用文本編輯器打開是沒有亂碼
使用Excel打開卻是亂碼
網上很多人說將數據庫中的數據由UTF-8轉換成GBK或者在header中指定編碼,這兩種方式都嘗試過但仍然沒有用
$html .= iconv("UTF-8","GBK",$row[$key]).$tab; header("Content-type: text/html; charset=utf-8")
于是在這篇文章中發現只要在導出文檔之前添加BOM之后就解決了: PHP 導出 CSV 文件用 Excel 打開出現中文亂碼(https://xinpure.com/php-export-csv-file-opened-by-excel-appear-garbled/)
但由于BOM后每一行的單元格就合并成一個了(\t)但使用Table來解決換行問題,但意外的發現使用Table后就解決了亂碼問題(不需要BOM)
UTF-8 header("Content-type:application/vnd.ms-excel;charset=UTF-8");
感謝各位的閱讀!看完上述內容,你們對怎么解決php導出excel亂碼的問題大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。