在GET中用%20替换连字符

时间:2015-08-11 00:01:10

标签: php apache url-rewriting httprequest

我重写了url,以便%20(space)的每个实例都替换为连字符( - )。现在,%20并未影响对网址的检索,例如它将html%20and%20css视为html and css,但使用连字符将其html and css替换为html-and-css,因此我没有正确检索。

我的问题是我想在使用GET方法时用空格代码替换连字符:

          $search_query2 = $_GET['crs_category'];

因此,我必须过滤$_GET['crs_category'];以用空格

替换"-"

2 个答案:

答案 0 :(得分:1)

您可以使用str_replace()

$search_query2 = str_replace("%20", "-", $_GET['crs_category']);

我的测试:

$crs_category = 'html%20and%20css';
$search_query2 = str_replace("%20", "-", $crs_category);
echo $search_query2;

收率:

html-and-css

答案 1 :(得分:1)

我一遍又一遍地阅读你的问题,我得出的唯一合乎逻辑的结论是,你已经用连字符替换了原来的%20。现在,你只想扭转这个过程......?

如果是这样,一个简单的str_replace就可以了。

$string = 'html-and-css';
$string = str_replace('-', ' ', $string);

echo $string;

输出:html%20和%20css

只需使用$string $_GET替换原来的array

$string = $_GET['crs_category'];