我有一个简单的`url,它传递两个参数。姓名和手机。但是当我使用特殊字符时,无法解码参数。看来?? 而不是字符。我已经尝试过使用urldecode($_GET['name']), rawurldecode, html_entity_decode, utf8_decode,但这些都没有奏效。我的utf-8HTML 中有元标记,我也尝试将其作为标题传递给内部php,但没有用。代码是这样的<?php echo $_GET['name']; ?>
2 回答
湖上湖
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 的回答。
- 2 回答
- 0 关注
- 136 浏览
添加回答
举报
0/150
提交
取消