如何解決php讀取excel亂碼問題

藏色散人
發布: 2023-03-05 18:30:01
原創
3578 人瀏覽過

php讀取excel亂碼問題的解決方法:1.修改「excel_class.php」類別檔案為「$s=iconv('utf-16le','utf-8′,$exc-> sst['data'][$ind])”;2、註解掉“uc2html”函數。

如何解決php讀取excel亂碼問題

推薦:《PHP影片教學

php讀取excel中文亂碼excel_class…

     今天碰到了大問題,就是讀excel的中文亂碼大問題!

     Excel_class.php是一款php導入excel的工具,它可以方便從excel導入資料到php,也可以方便用php把資料導入到excel.但今天很不給力!

    我蒐集了很多資料就是沒找到,後來想到:百度使我們最好的老師。好了,現在就找老師去!

    果然,在百度上搜到了關於這個工具的處理亂碼的方法。

 

    第一種方法:修改excel_class.php類別文件,找出$s = uc2html($exc->sst['data'][$ind]);替換為$ s = iconv('utf-16le','utf-8′,$exc->sst['data'][$ind]),這樣編碼就是utf-8了.

#如果還想把資料再導入mysql,而你的mysql編碼是GB2312,那你就需要再把資料從utf-8轉到gb2312了,可以這樣:$s=iconv(“UTF-8″,》GB2312″,$s )。

    第二種方法:開啟excel_class.php,找到函數uc2html, 將函數中的程式碼註解掉,直接將參數傳回,即改函數不做任何動作。

function uc2html($str) {
return $str;
}
登入後複製

接下來使用PHP中提供的函數mb_convert_encoding來將UTF-16LE轉換成UTF-8。

echo mb_convert_encoding($return[Sheet2][0][0], ‘UTF-8′, ‘UTF-16LE’);
登入後複製

這樣顯示就正常了。

   總結:在我的測試過程中,建議用第一種方法,第二種方法把數字變成亂碼了(不知道什麼原因)。

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

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!