PHP网址不允许' +'符号

时间:2016-12-19 09:36:17

标签: php laravel url

我正在使用以下网址

http://example.com/walkthrough?hostid=abcd&inspectoremail=abc+@gmail.com

我在这样的变量中得到了inspectoremail。

$inspectoremail = $_GET['inspectoremail'];

但当我回复$ inspectoremail时,它正在取代' +'空白符号。

abc @gmail.com

那么我如何获得在url中指定的inspectoremail。 任何帮助深表感谢。感谢

1 个答案:

答案 0 :(得分:2)

当你在URL中传递特殊字符时,你应该对它们进行编码(在php中使用urlencode)。

在您的示例中 - 加号(+)字符被翻译为%2B,因此您应该使用:

http://example.com/walkthrough?hostid=abcd&inspectoremail=abc%2B@gmail.com

如果您尝试对空格字符{进行编码,您将看到此字符将转换为+,因此当服务器解码字符串时,abc+@gmail.com的值将是abc @gmail.com(这就是你得到的)。