如何在PHP中重用查询字符串的转义值?

问题描述:

我想重复使用+的多项搜索查询来转义空格。如何在PHP中重用查询字符串的转义值?

$ _ SERVER [ 'QUERY_STRING']结果

q=my+search+term 

而$ _GET [ 'Q']结果

my search term 

我怎样才能得到

my+search+term 

做它必须是正则表达式?

$q = str_replace(' ', '+', $_GET['q']) 

$q = urlencode($_GET['q']); 

urlencode($_GET['q']); 
+1

不,他要圆 – 2010-12-09 15:53:54

+0

是它`urldecode`其他方式过吗? – Gumbo 2010-12-09 15:58:52

没有,你可以使用str_replace

$str = str_replace(' ', '+', $str); 

,但如果有更多的特殊字符,urlencode是更好的选择:

$str = urlencode($str); 

$ clean = urldecode($ _ SERVER ['QUERY_STRING']);

http://www.php.net/manual/fr/function.urldecode.php