二招解决php乱码问题

 更新时间:2012年03月25日 20:42:01   作者:  
PHP的乱码问题已经说了N+1遍了,但还是经常看到新手不知道该如何解决php乱码问题,在此本人再重新给总结一下,希望对新手有点帮助
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编码为例建立数据库如图:

 

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来说吧

 

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

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

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

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

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

相关文章

  • php 输出缓冲 Output Control用法实例详解

    php 输出缓冲 Output Control用法实例详解

    这篇文章主要介绍了php 输出缓冲 Output Control用法,结合实例形式详细分析了php 输出缓冲 Output Control基本概念、原理、使用方法及相关操作注意事项,需要的朋友可以参考下
    2020-03-03
  • php实现webservice实例

    php实现webservice实例

    这篇文章主要介绍了php实现webservice的方法,以实例形式讲述了webservice的原理与实现技巧,需要的朋友可以参考下
    2014-11-11
  • PHP判断手机是IOS还是Android

    PHP判断手机是IOS还是Android

    这篇文章主要介绍了PHP判断手机是IOS还是Android的三个示例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • 深入解析PHP中foreach语句控制数组循环的用法

    深入解析PHP中foreach语句控制数组循环的用法

    这篇文章主要介绍了深入解析PHP中foreach语句控制数组循环的用法,是PHP入门学习中的基础知识,需要的朋友可以参考下
    2015-11-11
  • Nginx服务器上安装并配置PHPMyAdmin的教程

    Nginx服务器上安装并配置PHPMyAdmin的教程

    这篇文章主要介绍了Nginx服务器上安装并配置PHPMyAdmin的教程,附带一条PHPMyAdmin加载慢的解决方法:)需要的朋友可以参考下
    2015-08-08
  • PHP文字转图片功能原理与实现方法分析

    PHP文字转图片功能原理与实现方法分析

    这篇文章主要介绍了PHP文字转图片功能原理与实现方法,结合具体实例形式分析了php基于gd2扩展库生成图片的相关配置及使用方法,需要的朋友可以参考下
    2017-08-08
  • php查询相似度最高的字符串的方法

    php查询相似度最高的字符串的方法

    这篇文章主要介绍了php查询相似度最高的字符串的方法,涉及php操作字符串及数组实现相似度算法的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • php实现模拟post请求用法实例

    php实现模拟post请求用法实例

    这篇文章主要介绍了php实现模拟post请求用法,分析了php模拟post请求的三种常见用法,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 微信公众平台开发教程②微信端分享功能图文详解

    微信公众平台开发教程②微信端分享功能图文详解

    这篇文章主要介绍了微信公众平台开发微信端分享功能,结合图文形式详细分析了微信分享功能的原理、操作步骤及相关实现技巧,需要的朋友可以参考下
    2019-04-04
  • PHP获取服务器端信息的方法

    PHP获取服务器端信息的方法

    这篇文章主要介绍了PHP获取服务器端信息的方法,通过一个自定义函数实现对服务器端系统版本、PHP版本、Apache版本等信息的获取,是非常实用的技巧,需要的朋友可以参考下
    2014-11-11

最新评论