是否可以使用php
将当前页面保存在变量(而不是完整的URL)中所以如果我的页面是www.mywebsite.com/news/bob
我希望在变量中获得/bob
。
答案 0 :(得分:1)
<?PHP $file_name = $_SERVER['PHP_SELF']; ?>
答案 1 :(得分:1)
答案 2 :(得分:1)
$ _ SERVER ['PATH_INFO']在我的安装中似乎不存在。不知道那里有什么故事,但如果它不在我的故事中,它可能不在你的故事上,所以这里有一些替代方案。
$current_page = '/' . basename($_SERVER['PHP_SELF']);
$current_page = '/' . basename($_SERVER['REQUEST_URI']);
$current_page = '/' . basename($_SERVER['SCRIPT_NAME']);
我发现$ _SERVER ['PHP_SELF']非常可靠。
如果您喜欢正则表达式,可以尝试
$current_page = preg_replace('/(.*?\/)+(.*)$/', '/$2', $_SERVER['PHP_SELF']);
答案 3 :(得分:0)
如果在包含或必需的文件上使用$ _SERVER ['PHP_SELF'],则它将返回当前文件,而不是当前页面的URL。在Windows机器上,唯一可靠的选项是$ _SERVER ['REQUEST_URI']或$ _SERVER ['HTTP_X_ORIGINAL_URL']但是,这些选项还包括任何查询字符串。
您需要从URL末尾删除查询字符串以获取所需的部分。
$current_page = $_SERVER['REQUEST_URI'];
$current_page = substr($current_page, 0, strpos($current_page, "?")); //removes query string
$current_page = = '/' . array_pop(array_filter(explode("/", $current_page)));