$ _SERVER [' SCRIPT_NAME']问题

时间:2014-04-04 18:37:09

标签: php

我目前正在学习PHP,而且我看到$_SERVER ['SCRIPT_NAME'];包含了当前脚本的路径。但是,我尝试识别的任何页面都显示为" /index.php"。

例如,我将在about.php上运行此命令,但结果将返回" /index.php"。

<?php
    $current_file = $_SERVER['SCRIPT_NAME'];
    echo $current_file;
?>

显然我错过了一些东西,但我不知道它是什么。

2 个答案:

答案 0 :(得分:1)

由于您的 about.php index.php 中包含的某个模板文件,因此您将/index.php作为结果

您应该尝试使用__FILE__

  

文件的完整路径和文件名。如果在include中使用,则返回包含文件的名称。从PHP 4.0.2开始,__ FILE__总是包含已解析符号链接的绝对路径,而在旧版本中,它在某些情况下包含相对路径。

答案 1 :(得分:0)

  

'SCRIPT_NAME'包含当前脚本的路径。这很有用   需要指向自己的页面。 __FILE__常量   包含当前的完整路径和文件名(即包含)   文件。

摘自http://www.php.net/manual/en/reserved.variables.server.php

php.net网站文档非常详细,有一些出色的用户评论。我建议你几乎是关于php的任何问题的第一站。