有关__FILE__和$_SERVER['SCRIPT_FILENAME']的区别

发布时间:2020-07-22编辑:脚本学堂
你知道php中__FILE__和$_SERVER['SCRIPT_FILENAME']的区别吗?有兴趣的朋友,可以参考下本文的介绍。

我们以具体的实例来体会__FILE__和$_SERVER['SCRIPT_FILENAME']的区别。

假设有a.php和b.php2个文件,分别位于E:/var/www/中。
1,a.php
 

复制代码 代码示例:
<?php
echo $_SERVER['SCRIPT_FILENAME'].'<br/>';
echo __FILE__;

执行a.php 得到:
 

E:/var/www/a.php    ($_SERVER['SCRIPT_FILENAME'])
E:wampwwwTexta.php    (__FILE__)

2,b.php
 

复制代码 代码示例:
<?php
require 'a.php';

执行b.php,结果为:
 

E:/var/www/b.php  ($_SERVER['SCRIPT_FILENAME'])
E:wampwwwTexta.php  (__FILE__)

由此,我们得出二者的区别:
$_SERVER['SCRIPT_FILENAME']  当前执行程序的绝对路径及文件名
__FILE__ 原始文件(被包含文件)的绝对路径及文件名

亲,你明白了吗?
有关__FILE__和$_SERVER['SCRIPT_FILENAME']的区别,大家好好体会以上例子中包含的意思吧。