二招解决php乱码问题


Posted in PHP onMarch 25, 2012

php网页出现乱码一般是在建立数据库时用的编码和php网页的编码不同造成的,

用phpmyadmin建立的数据库如果你不指定编码他默认是latin1_swedish_ci 编码,既瑞典语不区分大小写,而我们中国做的网页不是GBK就是GB2312编码,这样不出现乱码才怪.

1,建立数据库时指定编码.

在此再唠叨一下常用的编码,免的新手又迷茫:

如果你做的是简体中文网页,那么你在建立数据库时用GB2312编码,gb2312_chinese_ci.

如果你做的是繁体中文网页,那么你建立数据库时要用gib5编码, big5_chinese_ci

如果你做的网页有简体也有繁体中文,那么推荐你用GBK编码,gbk_chinese_ci . GBK包含的字码比GB2312要多,当然繁体也在其中.

如果你做的是多国语言网页,那么推荐你用UTF-8编码 . mysql中有二种utf8编码可供选择 : utf8_unicode_ci与utf8_general_ci 笔者一般用utf8_general_ci ,关于这二种编码的区别,请参考本站的另一篇文章: Mysql中校对集utf8_unicode_ci与utf8_general_ci的区别

我们用UTF-8编码为例建立数据库如图:

二招解决php乱码问题 

2,用php连接数据库时用mysq_query 设定一下编码
语法: mysql_query("SET NAMES 'utf8'");
例如:
$conn=mysql_connect('127.0.0.1','root','123456'); 
mysql_query("set names 'utf8'",$conn); //解决乱码 
mysql_select_db('test1',$conn);

一般情况下只要你做好了这二步,你的程序是不会出现乱码的
二般情况:
二般情况一般出现的不多,多出现在做的程序语言比较多,比如有时做utf8的,有时做gb2312的,有时又要做big5的网页,用IDE建立的.php文件编码和程序要显示的编码不同而引起的.
比如,我上次做了个gb2312的简体中文网页,现在老板又有吩咐要做个gbi5网页,但我的ide用的却是gb2312的编码
就拿我常用的IDE Dreamweaver来说吧

二招解决php乱码问题 

ide新建的网页是gb2312,而我却把建好的网页改成big5的了,这样怎么会不出现乱码呢,解决的方法很简单,重新另存为一下,指定一下编码就OK了,

如果还搞不定,那么在网页头部加一行http头信息

header("Content-Type:text/html;charset=utf-8");

注意:在发送header头信息时header前面不可以有任何输出,包括空格在内.

好了写了这么多,快看看你的程序属于哪个情况引起的乱码吧.

PHP 相关文章推荐
PHP中for循环语句的几种变型
Nov 26 PHP
同台服务器使用缓存APC效率高于Memcached的演示代码
Feb 16 PHP
深入php socket的讲解与实例分析
Jun 13 PHP
如何使用FireFox插件FirePHP调试PHP
Jul 23 PHP
PHP+Ajax实时自动检测是否联网的方法
Jul 01 PHP
在WordPress中安装使用视频播放器插件Hana Flv Player
Jan 04 PHP
非集成环境的php运行环境(Apache配置、Mysql)搭建安装图文教程
Apr 12 PHP
PHP性能优化大全(php.ini)
May 20 PHP
php正则提取html图片(img)src地址与任意属性的方法
Feb 08 PHP
PHP实现的二分查找算法实例分析
Dec 19 PHP
Laravel中9个不经常用的小技巧汇总
Apr 16 PHP
PHP与Web页面交互操作实例分析
Jun 02 PHP
php引用地址改变变量值的问题
Mar 23 #PHP
奇怪的PHP引用效率问题分析
Mar 23 #PHP
php地址引用(php地址引用的效率问题)
Mar 23 #PHP
PHP遍历数组的几种方法
Mar 22 #PHP
php遍历数组的方法分享
Mar 22 #PHP
php中大括号作用介绍
Mar 22 #PHP
那些年一起学习的PHP(三)
Mar 22 #PHP
You might like
php购物网站支付paypal使用方法
2010/11/28 PHP
php使用curl访问https示例分享
2014/01/17 PHP
php通过array_shift()函数移除数组第一个元素的方法
2015/03/18 PHP
thinkphp框架实现数据添加和显示功能
2016/06/29 PHP
使用WAMP搭建PHP本地开发环境
2017/05/10 PHP
window resize和scroll事件的基本优化思路
2014/04/29 Javascript
JS实现双击编辑可修改状态的方法
2015/08/14 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
2015/08/27 Javascript
js中使用使用原型(prototype)定义方法的好处详解
2016/07/04 Javascript
AngularJS包括详解及示例代码
2016/08/17 Javascript
JS实现间歇滚动的运动效果实例
2016/12/22 Javascript
angularjs实现分页和搜索功能
2018/01/03 Javascript
vuejs简单验证码功能完整示例
2019/01/08 Javascript
JavaScript中AOP的实现与应用
2019/05/06 Javascript
JS apply用法总结和使用场景实例分析
2020/03/14 Javascript
jQuery实现简单QQ聊天框
2020/08/27 jQuery
vue实现标签云效果的示例
2020/11/09 Javascript
Vue + ts实现轮播插件的示例
2020/11/10 Javascript
vue 根据选择的月份动态展示日期对应的星期几
2021/02/06 Vue.js
详解Python进程间通信之命名管道
2017/08/28 Python
Python网络爬虫与信息提取(实例讲解)
2017/08/29 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2018/05/16 Python
谈一谈基于python的面向对象编程基础
2019/05/21 Python
Python调用scp向服务器上传文件示例
2019/12/22 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
2020/10/23 Python
pycharm2020.1.2永久破解激活教程,实测有效
2020/10/29 Python
意大利香水和彩妆护肤品购物网站:Ditano
2017/08/13 全球购物
高二地理教学反思
2014/01/24 职场文书
餐厅经理岗位职责和岗位目标
2014/02/13 职场文书
工程管理英文求职信
2014/03/18 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
2014年物流工作总结
2014/11/25 职场文书
信用卡催款律师函
2015/05/27 职场文书
dubbo服务整合zipkin详解
2021/07/26 Java/Android
Mysql中一千万条数据怎么快速查询
2021/12/06 MySQL