使用UTF-8编码需要注意的地方
发布: 2009-1-15 17:38 | 作者: 网络转载 | | 查看: 9次
使用UTF-8编码,有2个要注意的,搜索引擎就可以正常识别了。一是网页的meta部分,必须有这句:<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">,二是网页的文本格式,必须保存为UTF-8格式,方法是用记事本打开网页,点击“文件→另存为”,在最后的Encoding,默认是ANSI,改为UTF-8。
先了解一下基本的东西:
<%@?codepage=936%>简体中文
<%@?codepage=950%>繁体中文
<UTF-8">%@?codepage=65001%>UTF-8
codepage指定了IIS按什么编码读取传递过来的串串(表单提交,地址栏传递等)。
最方便的方法如下:
不要转换任何模块网页的编码该utf-8的还是utf-8,该Gb22312的还是Gb2312
在Utf-8模块的包文件(必须是在第一行调用) 源代码最前面加上
<%@LANGUAGE="VBSCRIPT"?CODEPAGE="65001"%>
<%Session.CodePage=65001%>
在GB2312模块的包文件最前面加上
<%@LANGUAGE="VBSCRIPT"?CODEPAGE="936"%>
<%Session.CodePage=936%>
其他编码的类推。
要注意的是两者还有点区别:
<%Session.CodePage=65001%>会影响到下一页的编码显示,如果下一页是gb2312的,又没有指定session.codepage,可能会出现乱码,有时也导致ie的其他站点乱码(关IE重新打开)
<%response.charset="utf-8"%>这个只对当前页面起作用,不影响下一页的显示。
支持utf8
若要避免乱码,要保证以下3个字符集一致:
1、网页文件(.php .html 等)保存的编码方式。一般的编辑软件都可选择保存的编码方式(字符集)的。
2、html内指定浏览器使用的字符集。如<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
3、从数据库读取的数据所用的字符集。"set names utf-8"
不管用什么字符集,只要保证以上3个字符集一致,php一般就没有乱码了
