那些弄昏头的"utf-8","utf8","UTF-8"

时间:2021-07-26 07:39:00
      在使用中常常遇到utf-8和utf8,现在终于弄明白他们的使用不同之处了,现在和大家分享一下,下面我们看看utf-8和utf8有什么区别。
   “UTF-8”是标准写法,PHP在Windows下边英文不区分大小写,所以也可以写成"utf-8"。“UTF-8”也可以把中间的"-"省略,写成"UTF8"。一般程序都能识别,但也有例外,为了严格一点,最好把标准的大写“UTF-8”。

     在数据库中只能使用“utf8”(MySQL)在MySQL的命令模式中只能使用"utf8",不能使用"utf8",也就是说在PHP程序中只能使用"set names utf8(不加小横杠)",如果你加了"-"此命令行将不会生效,但是在PHP中header时却要加上"-",因为IE不认识没杠的“utf8”。原因如下文:

PHP中的header:
<?php
header('Content-type:text/html; charset=UTF-8');
?>

静态文件使用:
总结:只有在MySQL中可以使用“utf8”别名“UTF-8”,但是在其他地方一律使用大写“UTF-8”
具体为:
除了在命令"mysql_query(set names utf8)"外一律用大写“UTF-8”。