新 闻 资 讯

    Web 开发中遇到的UTF-8的问题总结

    来源:上海悦普网络 日期:2018-05-19 00:19 点击:

    一个网站如果需要国际化,就需要将编码从GB2312转成UTF-8,其中有很多的问题需要注意,如果没有转换彻底,将会有很多的编码问题出现!

    主要有五个方面:

    一..HTML页面转UTF-8编码问题

    二.PHP页面转UTF-8编码问题

    三.MYSQL数据库使用UTF-8编码的问题

    四.JS相关的UTF-8编码问题

    五.FLASH相关的UTF-8编码问题

    一.HTML页面转UTF-8编码问题

    1.在<head>后,<title>前加入一行:

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

    顺序不能错,一定要在<title>标签前加入,否则如果<title>与</title>之间有中文字符的话,显示的标题有可能是乱码!

    2.html文件编码问题:

    点击编辑器的菜单:“文件”->“另存为”,可以看到当前文件的编码,确保文件编码为:UTF-8,如果是ANSI,需要将编码改成:UTF-8。

    3.HTML文件头BOM问题:

    将文件从其他的编码转换成UTF-8编码时,有时候会在文件的最开始加上一个BOM标签,在个BOM标签可能会导致浏览器在显示中文的时候出现乱码。

    删除这个BOM标签的方法:

    1.可以用Dreamweaver打开文件,并重新保存,即可以去除BOM标签!

    2.可以用EditPlus打开文件,并在菜单“首选项”->“文件”->"UTF-8标识",设置为:“总是删除签名”,然后保存文件,即可以去除BOM标签!

    4.WEB服务器UTF-8编码问题:

    如果你按以上所列的步骤做了,还是有中文乱码问题,请检查你的所使用的WEB服务器的编码问题

    如果你使用的是Apache,请将配置文件里的:charset 设成:utf-8(这里仅列出方法,具体格式请参考apache的配置文件)。

    如果你使用的是Nginx,请将nginx.conf里的:charset   设成 utf-8,具体找到 "charset   gb2312;"或者类似的语句,改成:“charset   utf-8;”。