Php 在字符串中出现倒数第二个时间字符之前删除所有内容

Php 在字符串中出现倒数第二个时间字符之前删除所有内容,php,string,Php,String,这将不返回任何内容,因为它会在上次出现/字符及其最后一个字符之前删除所有内容 如何使其从http://stackoverflow.com/questions/this/that/ok/允许您指定开始搜索的位置 将您的线路更改为: $link = "http://stackoverflow.com/questions/this/that/ok/"; $link = trim(substr($link, strrpos($link, '/') + 1)); echo $link 将在结束前一个字符

这将不返回任何内容,因为它会在上次出现/字符及其最后一个字符之前删除所有内容

如何使其从
http://stackoverflow.com/questions/this/that/ok/

允许您指定开始搜索的位置

将您的线路更改为:

$link = "http://stackoverflow.com/questions/this/that/ok/";
$link = trim(substr($link, strrpos($link, '/') + 1));
echo $link

将在结束前一个字符开始搜索。正如@SurrelStreams所指出的,您仍然需要通过在结果中修剪的字符中添加
/
来修剪最后一个
/
,使其脱离结果(如果有的话)。

如果最后一个登录字符串是/

$newLink = trim(substr($link, strrpos($link, '/', -1) + 1));

拆分URL的更好方法是使用RegEx。有一个函数调用此函数。

如果您想要所有内容,包括倒数第二个“/”之后的内容,这不会给您“ok/”?是的,会的。但它可以在回声之前用stru_replace移除$link=str_replace(“/”,“,$link”);
$link = "http://stackoverflow.com/questions/this/that/ok/";

if(strlen($link)== strrpos($link, '/')+1)
    $link = substr_replace($link ,"",-1);

$link = substr($link, strrpos($link, '/') + 1);

echo $link;