PHP開發中的亂碼問題

CSDN炸了一個多月。。終於可以發博客了=_=


編碼問題,一定要小心小心再小心。

這兩天做數據庫設計,遇到了好幾次因爲編碼的問題而出現亂碼或者無法輸入的情況,總結一下以後省的出錯。

1. 數據庫要設置成utf8_general_ci,執行命令:

ALTER TABLE `score`
          COLLATE='utf8_general_ci',
          CONVERT TO CHARSET utf8;

2. 數據要設置成utf8格式,在你數據庫查詢的時候加上一句:

$mysqli->query("set names'utf8'");

應該就沒問題了

3. 瀏覽器也設置成utf8格式

4. 代碼文件,我用的是notepad++,在格式選項中有轉爲UTF-8編碼格式,點擊它然後Ctrl+S;

做到上面幾點應該就沒有亂碼問題了,如果還有的話,PHP裏面可以採用的有iconv,mb_convert_encoding來調試(要在my.ini中開啓mbstring功能),給上一個參考代碼:

//編碼轉換 
        functiondisplay_fileencoding($filename) 
        { 
            if(extension_loaded("mbstring")) 
            { 
               $code=mb_detect_encoding($filename);//檢測字符串編碼 
               $filename=mb_convert_encoding($filename,"UTF-8",$code);//將編碼$code轉換爲utf-8編碼 
                return $filename; 
            } 
            else 
                die("請檢查系統是否正確安裝配置mbstring"); 
        } 


 

 

發佈了18 篇原創文章 · 獲贊 24 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章