PHP问题与$\u GET
我对PHP问题与$\u GET,php,get,Php,Get,我对$\u GETvar有一个非常奇怪的问题 这是我的代码: if(isset($_GET['offer'])) { $params = array(); $params['wifi'] = "%wifi%"; $params['publisher'] = "%pubid%"; $params['framework'] = "%framework%"; $params['date'] = "%cachebuster%"; foreach($par
$\u GET
var有一个非常奇怪的问题
这是我的代码:
if(isset($_GET['offer'])) {
$params = array();
$params['wifi'] = "%wifi%";
$params['publisher'] = "%pubid%";
$params['framework'] = "%framework%";
$params['date'] = "%cachebuster%";
foreach($params as $key=>$param){
$array[$_GET[$key]] = $_GET[$key];
}
print_r($array);
}
这是我要发送的URL:
这是我得到的奇怪的输出:
Array ( [%wifi%] => %wifi% [%pubid%] => %pubid% [%framework%] => %framework% [Êchebuster%] => Êchebuster% )
为什么
%cachebuster%
会变成Êchebuster%
?URL中的百分号转义特殊字符。url似乎被解释为,并且在该字符集中,ca
是Ê
的代码
您应该将url更改为正确转义为%25
:
URL中的百分号转义特殊字符。url似乎被解释为,并且在该字符集中,
ca
是Ê
的代码
您应该将url更改为正确转义为%25
:
因为
%ca
是Ê(0xCA)的url编码形式
%
应编码为%25
有趣的是,
%wifi%
工作正常。。。我希望它会返回400个错误请求
,因为%ca
是Ê(0xCA)的url编码形式
%
应编码为%25
有趣的是,%wifi%
工作正常。。。我希望它会返回400个错误请求
,因此…在处理“%”字符时,我们应该使用php函数
//should be used for encoding URL
urlencode()
//should be used for decoding URL
urldecode()
在以下链接中签出php文档:
在处理“%”字符时,我们应该使用php函数
//should be used for encoding URL
urlencode()
//should be used for decoding URL
urldecode()
在以下链接中签出php文档: