2014-05-03 71 views
1

有沒有任何方法檢索PHP文件的調用頁面的頁面名稱?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,但我希望此代碼出現在多個頁面上,因此將其提取到其自己的頁面是必要的。

也許我應該在調用include 'val.php'之前將basename($_SERVER['PHP_SELF']);放入$_SESSION的會話變量中,然後在使用後銷燬該變量?這是一個好主意嗎?

+0

這將是[XY問題。](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) –

回答

3

如果我正確理解你的問題,你可以使用$_SERVER['SCRIPT_FILENAME'];

,將返回,其中包括在這種情況下,val.php的文件名。

+0

謝謝,就是這樣! –

0

pathinfo()返回有關路徑的信息:根據選項,可以是關聯數組或字符串。

(PHP 4> = 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 
?>