关于ZendStudio网页编码UTF-8和GB2312的问题

 转载地址:http://blog.sina.com.cn/s/blog_508ea5710100oez0.html


今天在编写一个网页,突然遇到了编码问题。我是在ZendFramework下编写一个系统,用ZendStudio下自动生成了网页框架,但是在网页中写了中文后,浏览器 显示乱码。

      其实,这是一个误会。

      首先,解释下UTF-8和GB2312的区别。一句话,UTF-8是3个字节的编码,而GB2312是4个字节,对相同中文字符得到的二进制编码就不一样了。

      其次,中文操作系统下安装ZendStudio,会把你所建的项目代码的编码自动设为GB2312的编码,但是如果你在网页里写

<?xml version="1.0" encoding="utf-8" ?>或

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

,那么你就被ZendStudio忽悠了。你的代码文件的编码跟你所写的网页编码不一样,你文件是GB2312,而你要显示的网页则是 utf-8,自然不匹配。

      最后,怎么解决呢?知道了为什么你就应该了解了。第一种方法,你把你ZendStudio生成的文件编码改成utf-8。在Zend Studio7下,点击菜单“edit”->“Set Encoding”,就可以更改文件编码了。这样就不用更改你的代码了第二种方法,你改代码,把<?xml version="1.0" encoding="utf-8" ?>或

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />中的utf-8改成GB2312。只要文件编码跟代码一致就行。


你可能感兴趣的:(框架,浏览器,Zend,encoding)