1. 云栖社区>
  2. PHP教程>
  3. 正文

PHP中文乱码解决方案

作者:用户 来源:互联网 时间:2017-12-01 20:45:06

开发网页中文最好

PHP中文乱码解决方案 - 摘要: 本文讲的是PHP中文乱码解决方案, 前言PHP中文乱码是PHP开发中的常见问题之一,中文乱码现像有时发生在网页本身,有些产生在于MYSQL交互的过程中,有时与操作系统有关,下面进行总结。 一、 PHP网页的编码最好最快的解决办法就是使页面申明的编码与数据库内部编码一致,如果

前言
PHP中文乱码是PHP开发中的常见问题之一,中文乱码现像有时发生在网页本身,有些产生在于MYSQL交互的过程中,有时与操作系统有关,下面进行总结。

一、 PHP网页的编码
最好最快的解决办法就是使页面申明的编码与数据库内部编码一致,如果页面申请的编码与数据库内部的编码不一致时,那就设定连接编码。Mysql_query(“set names ***”).

1、 php文件本身的编码与网页的编码应匹配,如果欲使用gb2312编码,那么php要输出头
header(“Content-type:text/html;charset=gb2312”)
静态页面添加
<meta http-equiv=”Content-type”content=”text/html; charset=gb2312”>,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。

2、 如果欲使用uft-8编码,那么php要输出头
header(“Content-type:text/html; charset=utf-8”),
静态页面添加
<meta http-equiv=”Content-type”content=”text/html; charset=utf-8”>,所有文件的编码格式为utf-8.保存为utf-8可能会有点麻烦,一般utf-8开头会有BOM,如果使用 Session就会出现问题,可用editplus软件来保存。在这个软件中,选择工具?参数选择?文件?UTF-8签名,选择总是删除,再保存就可以去掉BOM信息了。
3、PHP本身不是Unicode的,所有substr之类的函数得改成mb_substr(需要装mbstring扩展);或者用iconv转码。

在需要做数据库操作的PHP程序前加mysql_query(“set names 编码”),编码和PHP编码一致,如果PHP编码是gb2312那么mysql编码也就是gb2312,如果是uft-8,那么mysql中就是utf8.这样改过后就不会出现乱码了。



摘自 战地日记_LAMP兄弟连

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索开发 , 网页 , 的 , 中文 最好 ,以便于您获取更多的相关知识。