无法解码 GET 参数

我有一个简单的`url,它传递两个参数。姓名和手机。但是当我使用特殊字符时,无法解码参数。看来?? 而不是字符。

我已经尝试过使用urldecode($_GET['name']), rawurldecodehtml_entity_decodeutf8_decode,但这些都没有奏效。

我的utf-8HTML 中有元标记,我也尝试将其作为标题传递给内部php,但没有用。

代码是这样的

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


慕容3067478
浏览 137回答 2
2回答

RISEBY

您只需使用正确的功能,即utf8_encode:<?php&nbsp;echo&nbsp;utf8_encode($_GET['name']);&nbsp;?>输出:Consultório功能utf8_encode:此函数将字符串数据从 ISO-8859-1 编码转换为 UTF-8。请参阅此处的文档。

湖上湖

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'));&nbsp;//&nbsp;string(16)&nbsp;"Consult%C3%B3rio"如果这恰好是您无法控制的第三方数据,请查看Martin 的回答。
打开App,查看更多内容
随时随地看视频慕课网APP