获取url php的文件名

时间:2013-09-12 17:54:13

标签: php html url

我想知道如何在PHP中获取当前文件名,以便能够在不同的目录中加载相同的文件。

index.php
works.php

lang/de/
   index.php
   works.php
lang/pl/
   index.php
   works.php

<div id="language">
    <a href="../../index.php" class="lang">EN</a>
    <a class="lang" href="index.php">DE</a>
    <a class="lang" href="../pl/index.php">PL</a>
</div>

当前方法是将lang URL重定向到index.php。 我很想知道如何从works.php重定向到lang / de / works.php而不重定向到lang / de / index.php

对不起,如果我让你感到困惑

2 个答案:

答案 0 :(得分:4)

我认为这就是你想要的:

<?php

$page = basename($_SERVER['PHP_SELF']);
?>

<div id="language">
    <a href="../../<?php echo $page;?>" class="lang">EN</a>
    <a class="lang" href="<?php echo $page;?>">DE</a>
    <a class="lang" href="../pl/<?php echo $page;?>">PL</a>
</div>

您可以将当前文件名保存在$ page变量中。然后将其回显并替换链接中的index.php。

答案 1 :(得分:1)

你应该真的谷歌这个东西。

<?php basename($_SERVER['PHP_SELF']); ?>

GOOGLE

现在您添加了一些代码,这里就是。

<div id="language">
    <a href="../../<?php echo basename($_SERVER['PHP_SELF']); ?>" class="lang">EN</a>
    <a class="lang" href="<?php echo basename($_SERVER['PHP_SELF']); ?>">DE</a>
    <a class="lang" href="../pl/<?php echo basename($_SERVER['PHP_SELF']); ?>">PL</a>
</div>

仅供参考,basename($_SERVER['PHP_SELF']);获取当前文件的名称并返回该文件。换句话说,它将返回“index.php”或“works.php”