我试图在尾随反斜杠之前检索URL的最后一部分。我之前使用过这个,效果很好,但我在开发的网站上的URL没有尾随斜杠。以下是我用于此的代码。
$link = $_SERVER["REQUEST_URI"];
$link_array = explode('/',$link);
echo $page = end($link_array);
任何帮助将不胜感激,
亲切的问候,
里斯
答案 0 :(得分:2)
这对我有用
$link = $_SERVER["REQUEST_URI"];
if(substr($link, -1) == '/') {
$link = substr($link, 0, -1);
}
$link_array = explode('/',$link);
echo $page = strtoupper(end($link_array));
答案 1 :(得分:0)
$link = $_SERVER["REQUEST_URI"];
$link_array = explode('/',$link);
$lastPart = str_replace('/', '', $link_array[count($link_array) - 1]);
答案 2 :(得分:0)
你快到了。您必须选择倒数第二个值:
$link = $_SERVER["REQUEST_URI"];
$link_array = explode('/',$link);
end($link_array);//move cursor to the end
//pick last or second last depending on trailing slash
$page = substr($link,-1) == "/" ? prev($link_array) : current($link_array);
echo $page;
答案 3 :(得分:-1)
您可以使用php的parse_url来解析网址并获取所需的组件。
或
修改强>
$url = 'http://' . $_SERVER[HTTP_HOST] . $_SERVER[REQUEST_URI];
if (substr("url", -1) == '/') {
rtrim($url , "/")
}
$lastPart = substr($url, strrpos($url, '/') + 1);
这是来自Stackoverflow帖子: