php包含(include/require)文件时的作用域

IT/互联网 / 编程语言 养生小编 来源:互联网 139浏览 0评论

当一个php脚本被require/include时,他的变量作用域根据其上下文环境决定.

1.如果是在一个函数中require/include一个文件,则此文件中的变量作用域是这个函数的范围.也就是说,这个文件只能访问此函数内在载入这个文件前所定义的变量,全局变量是不能访问的.距离说明

脚本test.php的内容:

<?php    function foo(){        $GLOBALS[‘a‘]="i am global";        $b="i am variable inner function";        include "included-file.php";    }foo();

 

脚本included-file.php的内容:

<?phpecho $a,$b;

运行test.php的结果是:

Notice: Undefined variable: a in E:workphpcomaa.php on line 2
i am variable inner function

2.如果是在全局环境中引入一个文件,那这个文件是可以直接访问全局变量的.

 

php包含(include/require)文件时的作用域

原文:http://www.cnblogs.com/ch459742906/p/5926634.html