utf-8 和 utf8的區別小記

Y一蓑煙雨任平生發表於2020-11-03

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

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

PHP 中的 header:
<?php header('Content-Type: text/html; charset=UTF-8'); ?> //奇怪了:Content-Type 用冒號,Chatset卻是等號。

靜態檔案使用:
總結:【只有在MySQL中可以使用"utf-8"的別名"utf8",但是在其他地方一律使用大寫"UTF-8"。】

具體為:
除了在命令 “mysql_query(set names utf8)” 外一律用大寫"UTF-8"。

相關文章