二招解决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的FTP学习(一)[转自奥索]
Oct 09 PHP
PHP编程网上资源导航
Oct 09 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
May 24 PHP
PHP在特殊字符前加斜杠的实现代码
Jul 17 PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 PHP
怎么在Windows系统中搭建php环境
Aug 31 PHP
PHP与Java进行通信的实现方法
Oct 21 PHP
Yii配置文件用法详解
Dec 04 PHP
PHP使用适合阅读的格式显示文件大小的方法
Mar 05 PHP
CodeIgniter针对数据库的连接、配置及使用方法
Mar 03 PHP
php 访问oracle 存储过程实例详解
Jan 08 PHP
实例讲解PHP表单处理
Feb 15 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利用cookie实现访问次数统计代码
2011/05/19 PHP
php+iframe实现隐藏无刷新上传文件
2012/02/10 PHP
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
php过滤所有恶意字符(批量过滤post,get敏感数据)
2014/03/18 PHP
php获取当前页面完整URL地址
2015/12/30 PHP
laravel实现上传图片的两种方式小结
2019/10/12 PHP
JS Array对象入门分析
2008/10/30 Javascript
Firefox div高度自适应
2009/04/28 Javascript
javascript string字符串优化问题
2011/07/31 Javascript
用Javascript实现Windows任务管理器的代码
2012/03/27 Javascript
对frameset、frame、iframe的js操作示例代码
2013/08/16 Javascript
高效的获取当前元素是父元素的第几个子元素
2013/10/15 Javascript
javascript转换日期字符串为Date日期对象的方法
2015/02/13 Javascript
JS显示表格内指定行html代码的方法
2015/03/31 Javascript
基于JavaScript实现瀑布流效果(循环渐近)
2016/01/27 Javascript
jQuery+formdata实现上传进度特效遇到的问题
2016/02/24 Javascript
JavaScript中三种异步上传文件方式
2016/03/06 Javascript
js实现鼠标跟随运动效果
2020/08/02 Javascript
详解javascript常用工具类的封装
2018/01/30 Javascript
axios拦截设置和错误处理方法
2018/03/05 Javascript
vue父组件触发事件改变子组件的值的方法实例详解
2019/05/07 Javascript
react实现antd线上主题动态切换功能
2019/08/12 Javascript
使用Python向DataFrame中指定位置添加一列或多列的方法
2019/01/29 Python
python爬取内容存入Excel实例
2019/02/20 Python
使用已经得到的keras模型识别自己手写的数字方式
2020/06/29 Python
套娃式文件夹如何通过Python批量处理
2020/08/23 Python
微软美国官方网站:Microsoft美国
2018/05/10 全球购物
JBL英国官网:JBL UK
2018/07/04 全球购物
描述内存分配方式以及它们的区别
2016/10/15 面试题
应届生求职信范文
2014/06/30 职场文书
单位法人授权委托书范本
2014/10/09 职场文书
合作协议书模板
2014/10/10 职场文书
2015年事业单位工作总结
2015/04/27 职场文书
2015年城市管理工作总结
2015/05/23 职场文书
python实现层次聚类的方法
2021/11/01 Python
深入理解 Golang 的字符串
2022/05/04 Golang