如何将非URL友好字符转换为地址栏中的URL友好字符?

时间:2017-06-10 10:10:07

标签: php url

如何将地址栏中的非url友好字符转换为url-friendly slug。

例如,我希望字符串Option Explicit显示为http://www.example.com/?q=test%20words%20stringhttp://www.example.com/?q=test words string

P.S。:我正在使用表格中的GET方法传递值。

3 个答案:

答案 0 :(得分:0)

你可以复制字符串。将space替换为-

<?php $your_string = str_replace(' ', '-', strtolower($your_string)); ?>

答案 1 :(得分:0)

您需要urldecode功能:

$str = urldecode($url);

然后您可以按照您希望的方式转换字符串$str,例如使用缓冲器,这可能是所有情况下的最佳选择。这需要考虑很多事情,你可能无法自己做到。这是example of a sluggifier

如果您使用Symfony,您将缓冲器作为插件,因此它还取决于您使用的框架,如果您使用的话。

答案 2 :(得分:0)

您需要先解码网址

$url = "http://www.example.com/?q=test%20words%20string";
$nUrl = urldecode($url) //outputs http://www.example.com/?q=test words string

现在

$fUrl = str_replace(' ','-',$nUrl);