首页 后端开发 php教程 真的出鬼了!PHP接收网址中的中文参数,永远乱码!解决办法

真的出鬼了!PHP接收网址中的中文参数,永远乱码!解决办法

Jun 13, 2016 am 10:06 AM
php tag urldecode

真的出鬼了!PHP接收网址中的中文参数,永远乱码!
就一个简简单单的文件 kw.php 文件全部内容如下:

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php print_r($_GET);
登录后复制


文件 kw.php的文件编码UltreEdit另存为UTF-8 NONE BOM头,网页编码UTF-8

+++++++++++++++++++++++++++++++++++++++++++++++++
情况如下:
(1)浏览器firefox,网址为 kw.php?kw=中国人民解放军
(或自动变成 kw.php?kw=%D6%D0%B9%FA%C8%CB%C3%F1%BD%E2%B7%C5)输出的kw的值是乱码的,然后把浏览器的编码调整为GBK系列或者GB2312系列的,显示正常。
点击浏览器查看当前文档的编码,编码是UTF-8。[IE浏览器也是一样乱码,非得把浏览器调成GBK编码查看,才显示出原来的文字]

(2)浏览器firefox,将kw.php的文档另存为ANSI编码,输入这些都显示正常了。……

很奇怪啊。以前从来都没遇到过这样的事情,都是直接 urlencode,然后接受直接urldecode的,网页编码UTF-8,文档编码 UTF-8 NONE BOM HEADER的,今天却突然发生了这样的情况,在远处服务器上面测试和在本地测试都是这样,在家里的电脑里面和公司的电脑里面测试都是这样的,乱码的……
真的是出鬼了啊。以前出现这样的情况,网页编码和文档编码都统一称为UTF-8的就都没事情了。
现在却死活不行……


------解决方案--------------------
(1)远程服务器里面:用urldecode 得到的tag参数还必须换成 UTF-8编码的转码一次。

被接收的URL系统是否GBK ,远程服务器是否UTF-8;这样可能出现乱码

(2)本地localhost里:直接用urldecode 就可以得到tag参数的值,无需转码。

本地编码环境一致

------解决方案--------------------
探讨
是这样,a.php里面有一个连接 是 中国人民解放军,但是在 tags.php里面却
(1)远程服务器里面:用urldecode 得到的tag参数还必须换成 UTF-8编码的转码一次。
(2)本地localhost里:直接用urldecode 就可以得到tag参数的值,无需转码。

另外我发现这些编码都被变成了GB系列的URLENCODE编码,很奇怪的。


------解决方案--------------------
兄弟糾結了半年了還在糾結?

答案就在你的條件裏
远程是linux 系统 Apache 的。
我本地 WIN XP ,Apache 系统的。

我曾經在以前碰過,兩臺服務器,一臺linux 一臺win,一樣是編碼問題 然後需要不同的處理。具體應該是跟系統的字符集什麼的有關,上面有人說了。
------解决方案--------------------
机器是不会骗人的。不会见鬼,只是见bug.
让你们管运维的。把这个配置去了就行。
AddDefaultCharset UTF-8
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南 适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南 Dec 24, 2024 pm 04:42 PM

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 使用数据库 CakePHP 使用数据库 Sep 10, 2024 pm 05:25 PM

在 CakePHP 中使用数据库非常容易。本章我们将了解CRUD(创建、读取、更新、删除)操作。

CakePHP 日期和时间 CakePHP 日期和时间 Sep 10, 2024 pm 05:27 PM

为了在 cakephp4 中处理日期和时间,我们将使用可用的 FrozenTime 类。

CakePHP 文件上传 CakePHP 文件上传 Sep 10, 2024 pm 05:27 PM

为了进行文件上传,我们将使用表单助手。这是文件上传的示例。

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

在本章中,我们将学习以下与路由相关的主题?

讨论 CakePHP 讨论 CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

CakePHP 创建验证器 CakePHP 创建验证器 Sep 10, 2024 pm 05:26 PM

可以通过在控制器中添加以下两行来创建验证器。

CakePHP 日志记录 CakePHP 日志记录 Sep 10, 2024 pm 05:26 PM

登录 CakePHP 是一项非常简单的任务。您只需使用一项功能即可。您可以记录任何后台进程(如 cronjob)的错误、异常、用户活动、用户采取的操作。在 CakePHP 中记录数据很容易。提供了 log() 函数

See all articles