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


Posted in PHP onAugust 01, 2017

前言

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

很多新手朋友学习PHP的时候,发现程序中的中文在输出的时候会出现乱码的问题,那么为什么会出现这种乱码的情况呢?一般来说,乱码的出现有2种原因,一种是由于编码(charset) 设置错误,导致浏览器以错误的编码来解析,从而出现了满屏乱七八糟的“天书”,第二种就是文件被以错误的编码打开,然后保存,比如一个文本文件原先是GB2312编码的,却以UTF-8编码打开再保存,就会出现乱码的问题。本篇文章,就带大家了解一下,怎么解决php中乱码的问题。

我们将乱码情况分为以下几种,有需要的可以对照下面的几种情况有针对性的解决乱码问题

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

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

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

示例

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

我们现在的HTML5文件,设置编码更为简单,像下面这样

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

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

如何是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或更高版本,可以在链接数据库操作后,设置一个字符编码,像下面这样

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

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

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持

PHP 相关文章推荐
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
Sep 02 PHP
PHP 时间日期操作实战
Aug 26 PHP
php中将数组存到文件里的实现代码
Jan 19 PHP
php使用curl和正则表达式抓取网页数据示例
Apr 13 PHP
php采用ajax数据提交post与post常见方法总结
Nov 10 PHP
PHP过滤黑名单关键字的方法
Dec 01 PHP
php+mysql实现无限级分类
Nov 11 PHP
PHP使用socket发送HTTP请求的方法
Feb 14 PHP
PHP MVC框架路由学习笔记
Mar 02 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
Mar 20 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
Nov 04 PHP
安装docker和docker-compose实例详解
Jul 30 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
Aug 01 #PHP
Laravel 的数据库迁移的方法
Jul 31 #PHP
PHP实现webshell扫描文件木马的方法
Jul 31 #PHP
PHP/ThinkPHP实现批量打包下载文件的方法示例
Jul 31 #PHP
Thinkphp结合AJAX长轮询实现PC与APP推送详解
Jul 31 #PHP
php实现将二维关联数组转换成字符串的方法详解
Jul 31 #PHP
微信接口生成带参数的二维码
Jul 31 #PHP
You might like
广播爱好者需要了解的天线知识
2021/03/01 无线电
PHP 无限分类三种方式 非函数的递归调用!
2011/08/26 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
2013/06/28 PHP
PHP判断是否有Get参数的方法
2014/05/05 PHP
各种常用浏览器getBoundingClientRect的解析
2009/05/21 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
2014/12/18 Javascript
学习javascript面向对象 掌握创建对象的9种方式
2016/01/04 Javascript
jQuery实现的导航下拉菜单效果示例
2016/09/05 Javascript
微信小程序 for 循环详解
2016/10/09 Javascript
利用D3.js实现最简单的柱状图示例代码
2016/12/09 Javascript
js调用设备摄像头的方法
2018/07/19 Javascript
简化版的vue-router实现思路详解
2018/10/19 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
JavaScript中的函数申明、函数表达式、箭头函数
2019/12/06 Javascript
React生命周期原理与用法踩坑笔记
2020/04/28 Javascript
python实现在windows服务中新建进程的方法
2015/06/30 Python
Python实现树莓派WiFi断线自动重连的实例代码
2017/03/16 Python
Python 串口读写的实现方法
2019/06/12 Python
Python标准库itertools的使用方法
2020/01/17 Python
Python读取yaml文件的详细教程
2020/07/21 Python
英国玛莎百货美国官网:Marks & Spencer美国
2018/11/06 全球购物
人力资源管理毕业生自荐信
2013/11/21 职场文书
先进德育工作者事迹材料
2014/01/24 职场文书
小学生感恩演讲稿
2014/04/25 职场文书
计算机求职信
2014/07/02 职场文书
中学生秋季运动会广播稿
2014/09/21 职场文书
车间主任岗位职责
2015/02/03 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
户外拓展训练感想
2015/08/07 职场文书
保护环境建议书作文300字
2015/09/14 职场文书
医护人员继续教育学习心得体会
2016/01/19 职场文书
2016年小学教师政治学习心得体会
2016/01/23 职场文书
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle