用户可以输入 abc.com/而不是 abc.com,所以我想使用 strchr
进行验证。
这有效,但看起来很奇怪
if(strrchr($url, "/") == "/"){
$url = substr($url, 0,-1);
echo $url;
}
有没有更好的方法
是 - 使用可选的第二个参数来trim()
或rtrim()
您可以指定一个字符列表来修剪字符串的末尾。
$url = rtrim($url, '/');
如果尾随/
存在,它将被剥离,字符串返回时没有它。如果不存在,字符串将以其原始形式返回。
// URL with trailing /
$url1 = 'example.com/';
echo rtrim($url1, '/');
// example.com
// URL without trailing
$url2 = 'example.com';
echo rtrim($url2, '/');
// example.com
// URL with many trailing /
$url3 = 'example.com/////';
echo rtrim($url3, '/');
// example.com
如果您还想去除空格,请在字符串中添加其他字符'/'
,如rtrim($url, ' /')
如果您只想测试URL的最后一个字符是否/
,则可以使用substr()
if (substr($url, -1) === '/') {
// true
}