[问题分析处理]php设置gbk格式出现中文乱码

4 篇文章 0 订阅
2 篇文章 0 订阅

php设置gbk格式时中文乱码

PS:为了简单地说明和解决问题,本文将通过尽可能简单地代码进行演示。

一、问题呈现

  1. phpstudy根目录下的www文件夹中,创建一个站点文件夹test,其中新建一个文件a.php在这里插入图片描述

  2. a.php文件中添加如下代码

   <?php
   	echo "你好";
   ?>
  1. 打开Dreamweaver,在菜单栏中选择站点,点击新建站点(N)…
    在这里插入图片描述

  2. 站点选项卡中修改站点名称为test,并修改对应的站点文件夹路径,如图所示
    在这里插入图片描述

  3. 服务器选项卡中添加新服务器,并进行如下设置在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    点击保存,退出Dreamweaver

  4. 打开phpstudy,启动服务器
    在这里插入图片描述

  5. 打开浏览器,访问网址

      http://localhost:80/test/a.php

在这里插入图片描述

原本应该输出你好,但实际却输出了浣犲ソ——乱码。

二、问题分析和处理

中文乱码,不难猜测,这是字符编码问题。

通过控制台命令,我们发现此时网页的编码格式为gbk

既然gbk不行,那么utf-8可不可以呢?

我们回到a.php文件中,

修改文件内容如下

<?php
	header("Content-Type:text/html; charset=utf-8");	# 设置编码格式为utf-8
	echo "你好";
?>

再次回到浏览器窗口,刷新页面后,中文字符成功输出了!
在这里插入图片描述

三、补充

以下补充几个小问题

1.gbk也支持中文字符,为什么输出的是乱码呢?

这其实是因为页面编码格式和php文件编码格式不一致导致的。

2.能否让gbk编码的php文件成功显示中文字符呢?

可以!

请往下看。

  1. 打开Dreamweaver,在菜单栏中选择文件,点击下拉菜单中的页面属性…。如图所示。
    在这里插入图片描述

  2. 在弹出的页面属性窗口中选择标题/编码选项卡。如图所示。
    在这里插入图片描述

    可以看到,其中的编码(即php文件的编码格式)为utf-8——这就是为什么网页编码格式非utf-8不可的原因了。

  3. 将编码修改为简体中文(GB2312),点击确定,如图所示。
    在这里插入图片描述

  4. 在弹出的警告窗口中点击应用
    在这里插入图片描述

  5. 将a.php文件改回gbk格式,即修改内容如下

   <?php
   	echo "你好";
   ?>
  1. 保存a.php文档,再次用浏览器打开对应站点,如图所示。
    在这里插入图片描述

可以看到,此时页面的编码格式为gbk,而中文已经能够成功输出了!


本篇文章为本人原创。

转发请注明出处。

欢迎评论留言与我交流。

如果文章内容有疏漏,欢迎您在评论区指出。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wingaso

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值