当前位置: 首页 > 面试题库 >

获取URL PHP的最后一部分

岳安福
2023-03-14
问题内容

我只是想知道如何使用PHP提取URL的最后一部分。

示例URL是:

http://domain.com/artist/song/music-videos/song-title/9393903

现在如何使用PHP提取最后一部分?

9393903

URL中始终有相同数量的变量,并且id始终在末尾。


问题答案:

您可以使用preg_match来匹配所需的URL部分。

在这种情况下,由于该模式很简单,因此我们正在寻找一个正斜杠(\/并且由于正斜杠表示正则表达式模式的开始和结束,因此我们必须对其进行转义),以及一个或多个数字(\d+)字符串($)的末尾。圆括号\d+用于捕获我们想要的片段:即结尾。然后,我们将我们想要的结尾($end)分配给$matches[1](不是$matches[0],因为它与$url(即整个字符串)相同)。

$url='http://domain.com/artist/song/music-videos/song-title/9393903';

if(preg_match("/\/(\d+)$/",$url,$matches))
{
  $end=$matches[1];
}
else
{
  //Your URL didn't match.  This may or may not be a bad thing.
}

注意: 您可能会或可能不想在此正则表达式中添加更多的复杂性。例如,如果您知道您的URL字符串将 始终以
开头,http://则正则表达式可以变为/^http:\/\/.*\/(\d+)$/(其中.*表示零个或多个字符(不是换行符))。



 类似资料:
  • 问题内容: 在Python中,假设我有这样的路径: 我怎样才能得到零件? 问题答案: 使用,然后: 第一个去除所有斜杠,第二个给您路径的最后一部分。使用only会给出最后一个斜杠(在本例中为)之后的所有内容。

  • 问题内容: 我需要定义数字的最后一位数字,并将其分配给值。此后,返回最后一位数字。 我的代码段无法正常工作… 码: 题: 如何解决这个问题? 问题答案: 刚回来; 即取模数。这将比解析字符串要快得多。 如果可以为负则使用

  • 我正在上传一个图像,并返回带有图像数据(如宽度、大小等)的json数组。 现在,这种创建方法只是通过laravel eloquent模型将新数据插入数据库。我想不出一种方法,插入数据,返回刚刚插入的数据的id,然后以某种方式合并json数组并将其与其他json数据一起返回?希望这是有意义的。

  • 问题内容: 我正在使用String split方法,并且我想拥有最后一个元素。数组的大小可以更改。 例: 我想分割上面的字符串并得到最后一个项目: 我不知道在运行时数组的大小:( 问题答案: 将数组保存在局部变量中,并使用数组的字段查找其长度。减去1以说明它是基于0的: 注意:如果原始字符串仅由分隔符组成,例如或,则为0,这将引发ArrayIndexOutOfBoundsException。示例:

  • 问题内容: 我有一个包含以下列的数据库表: 在此表中,唯一的唯一值位于id中,即主键。 我想基于datetime值检索该表中的最后一组不同的记录。例如,下面是我的桌子 我想检索ID为4、7、8和9的记录,即具有不同代码(基于datetime值)的最后一组记录。我强调的只是我要实现的目标的一个示例,因为此表最终将包含数百万条记录和数百个单独的代码值。 我可以使用什么SQL语句来实现这一目标?我似乎无

  • 问题内容: 如何获取ArrayList的最后一个值? 我不知道ArrayList的最后一个索引。 问题答案: 以下是接口的一部分(由ArrayList实现): 是元素类型。如果列表为空,则抛出。你可以在此处找到整个API文档。