我在使用get方法的表单中输入了文本:
<form method="get" action="./" role="search">
<input name="query" type="text" value="">
<button>Go</button>
</form>
使用“ foo bar”提交表单时,重新加载的URL如下所示:
mywpsite.com/?query=foo%2Bbar
在Duckduckgo.com,Google和类似网站上,如何用+
代替%2B
来呈现?示例:
mywpsite.com/?query=foo+bar
答案 0 :(得分:0)
这不是一个好的解决方案,但我想这会起作用:
if(false!==stripos($_SERVER['REQUEST_URI'],"%2B")){
http_response_code(307);
header("Location: ".strtr($_SERVER['REQUEST_URI'],array('%2b'=>'+','%2B'=>'+')));
die();
}
此代码检查请求网址是否包含“%2b”,如果包含, 告诉浏览器使用“%2b”在URL处再次尝试该请求 转换为“ +”。