提取URL的最后一部分

6

你是如何获取这个URL的?通过PHP吗?还是已经是一个变量了? - David Nguyen
可能是从URL中提取查询字符串的一部分的重复问题。 - outis
5个回答

19

这是一个简单的示例:

 <?php
     $url = "http://example.com/i/am/file.php";
     $keys = parse_url($url); // parse the url
     $path = explode("/", $keys['path']); // splitting the path
     $last = end($path); // get the value of the last element 
 ?>
我希望这可以帮到你 ;)

5

3
如果你正在使用像WordPress或Magento这样会添加斜杠的CMS,那么在Vasil的解决方案中有一个简单的修改:
<?php
 $url = "http://example.com/i/am/file.php";
 $keys = parse_url($url); // parse the url
 $path = explode("/", $keys['path']); // splitting the path
 $last = end($path); // get the value of the last element 
 $last = prev($path); // get the next to last element 
 ?> 

您甚至可以只使用这样的简单请求URI调用:
    $request_path = $_SERVER['REQUEST_URI'];
    $path = explode("/", $request_path); // splitting the path
    $last = end($path);
    $last = prev($path);

2
$url = 'http://example.com/i/am/file.php';
$url = rtrim($url, '/');
preg_match('/([^\/]*)$/', $url, $match);
var_dump($match);

Test


0
请注意,如果由于某些原因您有一个尾随斜杠,例如一些CMS系统会在末尾放置(Magento,我在看你...),那么Vasil的示例将无法工作。

好吧,它会工作,但路径的末尾是空的。需要注意的事情。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接