You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP拆分URL方法:如何获取URL中最后一个斜杠后的内容

在PHP中拆分URL并获取最后一部分的几种方法

刚好最近也处理过类似需求,给你分享几个靠谱的实现方式,都能轻松拿到你要的最后一个操作部分(比如示例里的split):

方法一:parse_url+explode+array_filter组合

这个方法适合需要同时处理路径中多个分段的场景,逻辑清晰,兼容性强:

$url = "https://www.example.net/admin/split/";
// 解析URL,提取路径部分
$path = parse_url($url, PHP_URL_PATH);
// 按斜杠分割路径成数组
$segments = explode('/', $path);
// 过滤掉数组里的空字符串(因为URL末尾的/会生成空元素)
$segments = array_filter($segments);
// 获取数组最后一个元素
$lastSegment = end($segments);

echo $lastSegment; // 输出:split

不管URL末尾有没有斜杠,这个方法都能正确过滤掉空值,拿到有效的最后一段。

方法二:用basename函数(最简洁)

如果只需要最后一段,basename绝对是最优解,它本来就是用来获取路径最后一部分的,会自动忽略末尾的斜杠:

$url = "https://www.example.net/split/";
// 先提取路径
$path = parse_url($url, PHP_URL_PATH);
// 直接取最后一段
$lastSegment = basename($path);

echo $lastSegment; // 输出:split

一行核心代码搞定,简洁高效,推荐优先用这个方法。

方法三:正则表达式匹配

如果你习惯用正则,也可以通过正则直接匹配出最后一段内容:

$url = "https://www.example.net/admin/split/";
// 匹配最后一个斜杠后的非斜杠内容,兼容末尾有无斜杠的情况
if (preg_match('#/([^/]+)/?$#', $url, $matches)) {
    echo $matches[1]; // 输出:split
}

正则里的[^/]+表示匹配任意非斜杠的字符,/?$表示匹配末尾可能存在的斜杠,确保各种URL格式都能匹配到。

内容的提问来源于stack exchange,提问作者Decard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:33:27