如何使用PHP提取URL的最后一部分。
以下是示例网址
http://www.example.com/123
我想要关注输出
123
我怎么能在php中做到这一点?
答案 0 :(得分:4)
有很多方法可以解决这个问题。
parse_url
并获取路径/
字符的位置,然后根据/\d+$/
)rtrim($url, '0123456789')
),比较长度,如果不相同,则计算差异,然后提取数字。我可能会找到其他方法来做到这一点,但我认为这应该做得很好。如果你无法弄明白,那是因为缺乏想象力。
答案 1 :(得分:2)
这段代码对我有用
$id = substr($url, strrpos( $url, '/' )+1);
strrpos
获取斜杠最后一次出现的位置; substr
返回该位置后的所有内容。
答案 2 :(得分:2)
尝试:
$url = "http://www.example.com/123";
echo str_replace('/','', parse_url($url, PHP_URL_PATH));
答案 3 :(得分:1)
您可以使用此代码来实现您的目标:
<?php
$uri = explode( '?', $_SERVER['REQUEST_URI'] );
$uri = $uri[0];
$part_uri = explode( "/", $uri);
print_r( $uri );
print_r( $part_uri );
?>
$ part_uri将成为当前网站路径的数组。 例如,http://adomain.com/manual/test会导致:
Array ( [0] => [1] => manual [2] => test )
所以要获得“123”,你会使用$ part_uri [1]
答案 4 :(得分:1)
您可以尝试:
end(explode('/', $url))
答案 5 :(得分:0)
尝试substr()
echo substr('http://www.example.com/123', -3);
或parse_url()
$p =parse_url('http://www.example.com/123');
echo str_replace('/', '', $p['path']);