php中文乱码问题的终极解决方案汇总

 

乱码是咱们在开发可能常常碰见,也是最让人头疼的一个问题了,下面这篇文章主要介绍了在php开发中,可能碰见中文乱码问题的终极解决方案,文中介绍好几个状况下的解决方法,须要的朋友能够参考借鉴,下面来一块儿看看吧。
 

前言php

本文主要给你们介绍了关于php中文乱码问题的终极解决方案,分享出来供你们参考学习,在开始以前,咱们先来谈谈为何会出现中文乱码?html

不少新手朋友学习PHP的时候,发现程序中的中文在输出的时候会出现乱码的问题,那么为何会出现这种乱码的状况呢?通常来讲,乱码的出现有2种缘由,一种是因为编码(charset) 设置错误,致使浏览器以错误的编码来解析,从而出现了满屏乱七八糟的“天书”,第二种就是文件被以错误的编码打开,而后保存,好比一个文本文件原先是GB2312编码的,却以UTF-8编码打开再保存,就会出现乱码的问题。本篇文章,就带你们了解一下,怎么解决php中乱码的问题。mysql

咱们将乱码状况分为如下几种,有须要的能够对照下面的几种状况有针对性的解决乱码问题sql

第一种:解决HTML中中文乱码问题方法数据库

若是你的HTML文件文件出现了乱码问题,那么你能够在head标签里面加入UTF8编码(国际化编码):UTF-8是没有国家的编码,也就是独立于任何一种语言,任何语言均可以使用的。浏览器

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

示例学习

咱们如今的HTML5文件,设置编码更为简单,像下面这样网站

第二种、HTML和PHP混合的页面解决方案ui

如何是HTML和PHP混编,除了按照第一个方法所说的操做以外,还须要在PHP文件的最上面加入这句代码:编码

<?php
header("content-type:text/html;charset=utf-8");  //设置编码
 
?>

第三种、纯PHP页面的中文乱码问题(数据是静态的)

若是你的PHP页面出现了乱码,只须要在页面的开始处加入下面代码就能够了。

<?php
header("content-type:text/html;charset=utf-8");  //设置编码
?>

第四种、PHP+Mysql中文乱码问题

这个除了按照第三种所说的操做以外,还要在你的数据查询/修改/增长以前加入数据库编码。并且,值得注意的是,这里的UTF8和以前的不同,中间是没有横线的。

<?php
 mysql_query('SET NAMES UTF8');
 //接下来的就是查出数据或者修改,增长
?>

如何你使用的MySQL版本在 4.1或更高版本,能够在连接数据库操做后,设置一个字符编码,像下面这样

UTF-8编码只是其中一种编码,若是不想使用utf-8编码,也可使用其余编码,只需将UTF-8换成你想使用的编码就能够,目前中文网站开发中主要用的是GB2312和UTF-8 两种编码。

有一点要注意:在须要作数据库操做的php程序前加的 mysql_query("set names '编码'");编码,必定要和php编码一致,若是php编码是gb2312那mysql编码就是gb2312,若是是utf-8那mysql编码就是 utf8,这样插入或检索数据时就不会出现乱码了

总结

以上就是这篇文章的所有内容了,但愿本文的内容对你们的学习或者工做能带来必定的帮助,若是有疑问你们能够留言交流,谢谢你们对脚本之家的支持

相关文章
相关标签/搜索