• 技术文章 >后端开发 >PHP问题

    php中文输出乱码怎么办

    藏色散人藏色散人2020-11-30 16:54:56原创53

    php中文输出乱码的解决办法:1、在PHP文件的头部添加代码“charset=UTF-8”;2、在MySQL查询语句的前一行添加代码“mysql_query('SET NAMES UTF8');”。

    本教程操作环境:Windows7系统、php5.6,本文适用于所有品牌的电脑。

    推荐:《PHP视频教程

    解决 PHP 输出中文乱码的问题

    问题描述

    今天给导航狗(https://daohanggou.cn/)的 PHP 程序和数据库文件迁移了服务器, 但是迁移到新的服务器上之后 PHP 输出的中文和 PHP 输出的从 MySQL 数据库查询出来的数据中的中文都出现了乱码的情况. 下面记录一下我解决该问题的过程.

    解决步骤

    首先解决的是 PHP 程序直接输出 (输出的不是从数据库中查询的数据) 的中文乱码的问题. 由于我使用的是一台虚拟主机, 没有管理员权限, 无法修改 PHP 的配置文件, 因此, 对于这个问题我的解决办法是在 PHP 文件的头部加上如下代码:

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

    或者加上如下代码也可以:

    <?phpheader("Content-type:text/html;charset=utf-8");?>

    这样处理之后, 输出的结果是这样的 (图 1):

    图 1

    图 1

    如图 1 所示, 我用红框标注的是 PHP 程序从 MySQL 数据库查询的结果, 查询结果中的英文可以正常显示, 中文却变成了问号. 关于这个问题, 我的解决方法是在 MySQL 查询语句的前一行加入如下代码:

    mysql_query('SET NAMES UTF8');

    如图 2:

    图 2

    图 2

    如果经过上面的步骤之后问题还是没有解决, 可以尝试使用下面的 SQL 命令将出现中文编码错误的数据表改成 UTF-8 编码:

    ALTER TABLE `Test` DEFAULT CHARACTER SET utf8;

    以上就是php中文输出乱码怎么办的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:php
    上一篇:php foreach的用法详解 下一篇:php 如何替换最后的字符
    第14期线上培训班

    相关文章推荐

    • php读取中文乱码怎么办• php 中文截取乱码怎么办• 如何解决ajax php 中文乱码• 如何解决php文件上传乱码问题

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网