这是我正在使用的代码:
$from=urldecode($_GET['from']);
$str =urldecode("%2B");
echo "$str<br>";
echo "$from<br>";
这是网址的一部分:from=%2B995594262653
为什么这回声
+
995594262653
? (注意,数字前面有一个空格)。我$str
用来检查该功能是否有效。显然,它适用于简单的%2B
. 可能是什么问题?
它正在工作,但您需要意识到 PHP 会自动对它放入 $_GET 数组中的数据进行 urldecode 。您正在第二次执行此操作并进一步转换输入。
当您的脚本运行时,$_GET['from']
包含+995594262653
当您通过 urldecode 运行该值时,+
将转换为空格。