创建人类可读的URL搜索字符串

时间:2011-01-16 13:15:42

标签: php url encoding

我刚刚在我的程序中实现了搜索功能。如果发送了一个搜索字符串,程序就会这样:

if (isset($_GET['s'])) {
    header('Location: /search/'.rawurlencode($_GET['s']));
    exit;
}

我遇到的唯一问题是生成的搜索字符串URL实际上不是人类可读的,例如搜索字词is 500€ a lot of money会导致is%20500€%20a%20lot%20of%20money。我想建立一个更具人性化的搜索网址,例如is+500€+a+lot+of+money

是否有一种简单的方法可以执行此操作,或者您是否需要手动编码字符串,例如寻找空间等,并替换它们。

1 个答案:

答案 0 :(得分:10)

使用urlencode代替rawurlencode。这使用+表示空格而不是%20