php中文乱码问题的4种解决方案

乱码的出现有2种原因,一种是由于编码(charset) 设置错误,导致浏览器以错误的编码来解析,从而出现了满屏乱七八糟的“天书”,第二种就是文件被以错误的编码打开,然后保存,比如一个文本文件原先是GB2312编码的,却以UTF-8编码打开再保存,就会出现乱码的问题。
我们将乱码情况分为以下几种,有需要的可以对照下面的几种情况有针对性的解决乱码问题。
第一种:解决HTML中中文乱码问题方法
如果你的HTML文件文件出现了乱码问题,那么你可以在head标签里面加入UTF8编码(国际化编码):UTF-8是没有国家的编码,也就是独立于任何一种语言,任何语言都可以使用的。

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

示例
php中文乱码问题的4种解决方案
我们现在的HTML5文件,设置编码更为简单,像下面这样

php中文乱码问题的4种解决方案

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

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

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

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

如果你的PHP页面出现了乱码,只需要在页面的开始处加入下面代码就可以了。

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

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

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

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

如果你使用的MySQL版本在 4.1或更高版本,可以在链接数据库操作后,设置一个字符编码,像下面这样

php中文乱码问题的4种解决方案

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

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

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/4812.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚的头像重蔚管理团队
上一篇 2018年3月20日 17:14
下一篇 2018年3月22日 09:38

相关推荐

  • PHP入门指南:PHP和Prometheus。

    PHP作为一种开源的脚本语言,已经有20多年的历史。它主要被用于Web开发,特别是用于服务端的脚本。PHP的使用非常广泛,它被用于构建许多大型的Web应用程序和网站。Prometheus则是一种开源的监控系统和时间序列数据…

    2023年5月22日
    07
  • (实用篇)PHP ftp上传文件操作类

    (实用篇)PHP ftp上传文件操作类 <?php /** * 作用:FTP操作类( 拷贝、移动、删除文件/创建目录 ) */ class class_ftp { public $off; // 返回操作状态(成功/失败) public $conn_id; // FTP连接 const FTP_HOST='…

    2016年10月22日
    0338
  • 学习php+jQuery+Ajax实现点赞效果的方法

    本文实例讲述了php+jQuery+Ajax实现点赞效果的方法。分享给大家供大家参考,具体如下:数据库设计先准备两张表,pic表保存的是图片信息,包括图片对应的名称、路径以及图片“赞”总数,pic_ip则记录用户点击赞后的IP…

    2022年6月16日
    0185
  • 浅谈PHP中isset()、empty()、is_null()的区别

    在PHP中,isset()、empty()和is_null()都可用于测试变量的值,那么它们之间有什么差异呢?下面本篇文章就来对比一下这三个函数,了解一下它们的区别。让我们从一些定义开始。isset() : 你可以用isset() 来确定一个…

    2023年3月29日
    06
  • PHP8.0中的文件操作:文件监控

    随着Web应用程序的不断发展,PHP已经成为了Web开发中最重要的编程语言之一。作为一门灵活性极强的编程语言,PHP的每个版本都带来了新的功能和优化,为了满足不同的需求应用场景。在PHP 8.0版本中,新增了一个非常实…

    2023年5月19日
    05
  • PHP微信开发:如何实现多公众号管理

    随着微信公众号市场的日益火热,越来越多的企业和个人开始关注微信公众号开发,尤其是PHP微信开发技术。但是,对于需要同时管理多个公众号的人来说,如何实现多公众号的管理,是一个需要解决的问题。本文将介绍PHP…

    2023年5月18日
    07
  • PHP入门指南:表单处理。

    PHP是一种十分常见的服务器端编程语言,其应用广泛,尤其在Web开发中被广泛采用。通过使用PHP,我们可以访问数据库、创建动态页面、从表单中收集数据等。本篇文章将介绍如何使用PHP处理表单。前置知识在开始学习PHP…

    2023年5月22日
    06
  • (实用篇)php中计算中文字符串长度、截取中文字符串的函数代码

    在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函数并非PHP的核心函数,所以,它们常常有可能没有开启。当然,如果是用的自己的服务器,则只要在php.ini中开…

    2016年10月25日
    0372

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息