为了账号安全,请及时绑定邮箱和手机立即绑定

无法解码 GET 参数

无法解码 GET 参数

PHP
慕容3067478 2021-11-05 13:13:18
我有一个简单的`url,它传递两个参数。姓名和手机。但是当我使用特殊字符时,无法解码参数。看来?? 而不是字符。我已经尝试过使用urldecode($_GET['name']), rawurldecode, html_entity_decode, utf8_decode,但这些都没有奏效。我的utf-8HTML 中有元标记,我也尝试将其作为标题传递给内部php,但没有用。代码是这样的<?php echo $_GET['name']; ?>
查看完整描述

2 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

您只需使用正确的功能,即utf8_encode

<?php echo utf8_encode($_GET['name']); ?>

输出:

Consultório

功能utf8_encode

此函数将字符串数据从 ISO-8859-1 编码转换为 UTF-8。

请参阅此处的文档。


查看完整回答
反对 回复 2021-11-05
?
湖上湖

TA贡献2003条经验 获得超2个赞

name=Consult%F3rio

这是Consultório早期网络的良好旧 ISO-8859-1 编码。如果解码后的版本呈现不正确,很可能您的应用程序根本没有使用 ISO-8859-1,因此在那里使用它也没有任何好处。如果您的应用程序使用 UTF-8,最简单的解决方案是完全切换到 UTF-8:

Consult%C3%B3rio

这基本上是任何内置 PHP 函数在输入 UTF-8 数据时所得到的,因为它们在字节级别工作:

var_dump(rawurlencode('Consultório')); // string(16) "Consult%C3%B3rio"

如果这恰好是您无法控制的第三方数据,请查看Martin 的回答


查看完整回答
反对 回复 2021-11-05
  • 2 回答
  • 0 关注
  • 136 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信