3

我想知道如何在 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

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

4

2 回答 2

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。

于 2013-09-12T18:10:08.010 回答
1

你真的应该用谷歌搜索这些东西。

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

谷歌

既然您添加了一些代码,就开始吧。

<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”

于 2013-09-12T17:58:11.667 回答