在PHP中使用strrchr和substr删除最后一个字符

在PHP中使用strrchr和substr删除最后一个字符,php,Php,用户可以输入abc.com/而不是abc.com,因此我想使用strchr进行验证 这是可行的,但看起来很奇怪 if(strrchr($url, "/") == "/"){ $url = substr($url, 0,-1); echo $url; } 有更好的方法吗?是-使用可选的第二个参数,您可以指定一个字符列表来修剪字符串的结尾: $url = rtrim($url, '/'); 如果存在尾随的/,则会将其剥离,并返回不带尾随的字符串。如

用户可以输入abc.com/而不是abc.com,因此我想使用
strchr
进行验证

这是可行的,但看起来很奇怪

    if(strrchr($url, "/") == "/"){
        $url = substr($url, 0,-1);
        echo $url;
    }

有更好的方法吗?

是-使用可选的第二个参数,您可以指定一个字符列表来修剪字符串的结尾:

$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()


是-使用可选的第二个参数,您可以指定一个字符列表来修剪字符串的结尾:

$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()


strrchr
在PHP中是无用的,必须有更简单的方法来获得你想要的存在。
strrchr
在PHP中是无用的,必须有更简单的方法来获得你想要的存在。如果没有/在结尾,rtrim将返回false并且什么也不做?@ivyong
rtrim()
将从字符串末尾删除
//code>,并返回一个空URL。这不是你的本意吗,你想把
example.com/
转换成
example.com
?@ivyong请明确说明你想要实现什么,因为我可能误解了。是否要删除尾随文件
/
,或只是验证其是否存在?请删除尾随文件。因此,如果url是abc.com,它将返回false,而我的url仍然是abc.comrtrim()将删除
/
,但如果字符串不变,则不会返回false。我仍然不明白-您希望字符串
abc.com
true/false
出现
/
?如果没有/在结尾,rtrim将返回false而不做任何事情?@ivyong
rtrim()
将从字符串结尾删除
//code>,并返回一个空URL。这不是你的本意吗,你想把
example.com/
转换成
example.com
?@ivyong请明确说明你想要实现什么,因为我可能误解了。是否要删除尾随文件
/
,或只是验证其是否存在?请删除尾随文件。因此,如果url是abc.com,它将返回false,而我的url仍然是abc.comrtrim()将删除
/
,但如果字符串不变,则不会返回false。我仍然不明白-您希望字符串
abc.com
true/false
出现
/
的最终结果是什么?