php包含(include/require)文件时的作用域
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php包含(include/require)文件时的作用域相关的知识,希望对你有一定的参考价值。
当一个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的内容:
<?php echo $a,$b;
运行test.php的结果是:
Notice: Undefined variable: a in E:\work\phpcom\aa.php on line 2
i am variable inner function
2.如果是在全局环境中引入一个文件,那这个文件是可以直接访问全局变量的.
以上是关于php包含(include/require)文件时的作用域的主要内容,如果未能解决你的问题,请参考以下文章
PHP 文件包含总结 include require 命名空间 autoload spl_autoload_register 读取文件路径
php的include(),require(),include_once(),require_once()
求大神解释一下PHP中include()require()import()还有shine()分别啥作用吗
PHP内的包含语句(include(),require(),include_once(),require_once())