Php 如何获取当前页面名称(url)并将其作为类添加到;正文“;

Php 如何获取当前页面名称(url)并将其作为类添加到;正文“;,php,html,Php,Html,我正试图通过php找到一种方法: 1) 通过url获取当前页面的名称a-great-video 2) 将其作为类添加到主体中 <body class="a-great-video"></body> 我想要得到的是:“注册”或“成员注册”要获得当前页面名,请使用: basename(__FILE__); 要将其作为一个类包含在您的身体中: <body class="<?php basename(__FILE__);?>"> 试试这个: <

我正试图通过php找到一种方法:

1) 通过url获取当前页面的名称a-great-video

2) 将其作为类添加到主体中

<body class="a-great-video"></body>

我想要得到的是:“注册”或“成员注册

要获得当前页面名,请使用:

basename(__FILE__);
要将其作为一个类包含在您的身体中:

<body class="<?php basename(__FILE__);?>">
试试这个:

<?php
    $url = $_SERVER['REQUEST_URI'];
    preg_match('|.*/(.*)|', $url, $matches);
?>
<body class = "<?php echo $matches[1]; ?>">


你的代码是如何引入body标签的?您使用的是模板引擎吗?如果我理解正确,你想要:
?是的,没错。它使用一个模板引擎。基本上页眉和页脚php包含可能的重复在某种程度上是的,但我正在尝试在mod_重写后获取文件名。你能将信息传递给路由器而不是使用站点重写吗?脚本或内容如何不知道真正的路径名?可以根据加载的视图修改dom吗?我在中添加了此代码,但由于我的站点使用包含的文件,如果我将该代码添加到站点的header.php文件中,它将返回header.php而不是页面名称。我的站点使用mod_rewrite,所以我尝试获取最后一段url的url名称。基本上是url中最后一个“/”之后的术语。我不是给你答案的人,但是$_SERVER['PHP_SELF'])返回完整路径,而不仅仅是好名称。这里是它返回的内容:/site/members/index,这是原始url。是否仍然可以获得重写的页面url?它使用mod_重写。还有什么方法可以删除后面的文件夹结构,只将单词“signup”作为输出,甚至是“members/signup”。然后我可以做一个preg_replace来切换类名称的“/”和“-”,这很有效!您只需要将$url用引号括起来,这样它就可以将其作为字符串读取。一旦我删除引号,它就会像魔术一样工作。如果你能编辑,我会把它标记为正确的answer@ValeryStatichny如果某一点上的页面名称为“/Thank?id=HWZNK-4eaef238eccb81d6”,则如何在解决“?”后剪切所有内容,包括“?”。如果有人需要它,它会替换问号后面的所有内容:$pagename_clean=substr($matches[1],0,strpos($matches[1],“?”);
<?php
    $url = $_SERVER['REQUEST_URI'];
    preg_match('|.*/(.*)|', $url, $matches);
?>
<body class = "<?php echo $matches[1]; ?>">