2014-04-29 53 views
-1

好的,我在每个页面上创建一个网站,我想include一个文件sidebar.php。文件'包括''包括'的回声名称

在sidebar.php我想回显包含sidebar.php文件的名称。

下面是sidebar.php的内容,它们返回'sidebar'。

<?php 
$file = basename(__FILE__, '.php'); 
echo $file; 
;?> 

我发现了一个similar question但是整个的一点是,我没有做任何变量在每个页面上。

请原谅我单词'include'的模糊用法,我使用它作为php中的陈述。

+1

这听起来像一个[XY问题(HTTP://meta.stackexchange .COM /问题/ 66377 /什么,是最XY-问题)。 *为什么*你需要这个?可能有更好的方法。 – h2ooooooo

+0

包含'sidebar.php'的文件是URI中请求的脚本吗? '$ _SERVER'可能已经有了你想要的值(虽然像@ h2ooooooo,我怀疑有更好的办法) –

+0

h2ooooooo我愿意说你是对的。 – sgp667

回答

2

你可以通过一个会话变量它传递到边栏页:

<?php 
    session_start(); 
    $_SESSION['filename'] = "thisFilesName.php"; 
    include('../sidebar.php'); 
?> 

的sidebar.php:

<?php 
    session_start(); 
    echo $_SESSION['filename']; 
?> 
+0

John,你认为没有在sidebar.php之外包含php就可以完成这个任务吗? – sgp667

+0

你是说你想在父页面上唯一的PHP代码行是'include'sidebar.php';'? –

+1

为什么使用会话变量考虑它包含边栏呢?你所要强制的是用户有一个会话cookie。只需使用常规变量。 – h2ooooooo