十步解決PHP使用UTF-8編碼問題_PHP教程

來源:互聯網
上載者:User
以前說過如果JS檔案不是UTF8會在IE有bug,所以JS代碼也要用UTF-8。還有資料庫也都要用UTF-8。
php(做為現在的主流開發語言)用UTF-8總結:

  1. php(做為現在的主流開發語言)檔案本身必須是UTF-8編碼。不像Java會產生class檔案,避免這個問題
  2. php(做為現在的主流開發語言)要輸出頭:header(”Content-Type: text/html; charset=UTF-8″)
  3. meta標籤無所謂,有header所有瀏覽器就會按header來解析
  4. 所有外圍都得用UTF8,包括資料庫、*.js、*.css(CSS影響倒不大)
  5. php(做為現在的主流開發語言)本身不是Unicode的,所有substr之類的函數得改成mb_substr(需要裝mbstring擴充);或者用iconv轉碼(基本上的linux都裝了,沒裝的話download、tar、make、make install,很簡單的)
  6. my.ini:
    [MySQL(和PHP搭配之最佳組合)]
    default-character-set=utf8
    [MySQL(和PHP搭配之最佳組合)d]
    default-character-set=utf8
    default-storage-engine=MyISAM
    在[MySQL(和PHP搭配之最佳組合)d]下加入:
    default-collation=utf8_bin
    init_connect=SET NAMES utf8
  7. 在需要做資料庫操作的php(做為現在的主流開發語言)程式前面加上
    mb_internal_encoding(utf-8);
  8. create table最後邊加上ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin
  9. php(做為現在的主流開發語言)MyAdmin/config.inc.php(做為現在的主流開發語言)
    $cfg[DefaultCharset] = utf-8;
    $cfg[RecodingEngine] = iconv;
  10. php(做為現在的主流開發語言)Admin匯出資料時
    把"二進位地區使用十六進位顯示"的勾去掉

特別鬱悶的:檔案系統函數不支援UTF-8!

http://www.bkjia.com/PHPjc/509161.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/509161.htmlTechArticle以前說過如果JS檔案不是UTF8會在IE有bug,所以JS代碼也要用UTF-8。還有資料庫也都要用UTF-8。 php (做為現在的主流開發語言) 用UTF-8總結: ph...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.