我有一些网址,例如www.amazon.com/
,www.digg.com
或www.microsoft.com/
,我想删除尾随斜杠(如果存在),因此不仅仅是最后一个字符。是否有trim
或rtrim
?
答案 0 :(得分:209)
您将rtrim
放在答案中,为什么不直接查找?
$url = rtrim($url,"/");
作为旁注,请通过执行以下操作查找任何PHP函数:
(rtrim
代表'右边修剪')
答案 1 :(得分:8)
简单并适用于Windows和Unix:
$url = rtrim($url, '/\\')
答案 2 :(得分:3)
我来到这里寻找一种方法来删除尾随斜杠并重定向浏览器,我已经想出了一个答案,我希望与任何追随我的人分享:
//remove trailing slash from uri
if( ($_SERVER['REQUEST_URI'] != "/") and preg_match('{/$}',$_SERVER['REQUEST_URI']) ) {
header ('Location: '.preg_replace('{/$}', '', $_SERVER['REQUEST_URI']));
exit();
}
($_SERVER['REQUEST_URI'] != "/")
将避免主机URI,例如www.amazon.com/,因为web browsers always send a trailing slash after a domain name,而preg_match('{/$}',$_SERVER['REQUEST_URI'])
将匹配所有其他带尾随斜杠的URI作为最后一个字符。然后preg_replace('{/$}', '', $_SERVER['REQUEST_URI'])
将删除斜杠并移交给header()
以重定向。 exit()
函数对于停止任何进一步的代码执行非常重要。
答案 3 :(得分:-21)
$urls="www.amazon.com/ www.digg.com/ www.microsoft.com/";
echo preg_replace("/\b\//","",$urls);