天天看點

[分享] utf8 和 UTF-8 有什麼差別

“UTF-8”是标準寫法,在Windows下邊英文不區分大小寫,是以也可以寫成“utf-8”。“UTF-8”也可以把中間的“-”省略,寫成“UTF8”。一般程式都能識别,但也有例外(如下文),為了嚴格一點,最好用标準的大寫“UTF-8”。

在MySQL資料庫中隻能使用“utf8”

  在MySQL的指令模式中隻能使用“utf8”,不能使用“utf-8”,也就是說在PHP程式中隻能使用“set names utf8(不加小橫杠)”,如果你加了“-”此行指令将不會生效,但是在PHP中header時卻要加上“-”,因為IE不認識沒杠的“utf8”,原因見下文。

在IE浏覽器中隻能使用“utf-8”

  IE中如果使用了“utf8”,頁面可能會 空白 或 顯示為亂碼。

  但是在其它浏覽器卻是正常的,原因是因為:其它浏覽器預設使用的是UTF-8的編碼,如果無法識别頁面的編碼就會用預設的UTF-8來解碼,但是IE的預設編碼是GB2312,是以預設的話就。。。。。(其它浏覽器指“FireFox”、“Chrome”、“Opera”)

總結  

  【隻有在MySQL中可以使用“utf-8”的别名“utf8”,但是在其他地方一律使用大寫“UTF-8”。】

  具體為:

    在指令“mysql_query(set names utf8)”外一律用大寫“UTF-8”。