有没有办法检索php文件的调用页面的页面名称?
例如,如果我有index.php
:
<?php
session_start();
include 'val.php';
// other stuff
?>
我的val.php
看起来像:
<?php
// get file name of caller (index.php in this case)
?>
如果我将echo basename($_SERVER['PHP_SELF']);
代码放在val.php
中,我可以使用index.php
来获取页面名称,但我希望此代码显示在多个页面上,因此将其提取到其中自己的页面是必要的。
也许我应该在调用basename($_SERVER['PHP_SELF']);
之前将$_SESSION
放入include 'val.php'
中的会话变量中,然后在使用后销毁该变量?这是个好主意吗?
答案 0 :(得分:3)
如果我正确理解您的问题,您可以使用$_SERVER['SCRIPT_FILENAME'];
这将返回包含val.php的文件名。
答案 1 :(得分:0)
pathinfo()返回有关路径的信息:关联数组或字符串,具体取决于选项。
(PHP 4&gt; = 4.0.3,PHP 5,PHP 7) pathinfo - 返回有关文件路径的信息
从此处 - http://php.net/manual/en/function.pathinfo.php
<?php
$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');
echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n"; // since PHP 5.2.0
?>