【发布时间】:2016-03-17 10:37:52
【问题描述】:
我正在尝试将包含的文件封装在一个函数中。包含文件中的任何内容都不应在封装函数之外访问。
我发现包含文件中的变量将被限制在封装函数的范围内,但包含文件中的函数将是全局可访问的。
index.php:
function encapsulate_this() {
include 'some_file.php';
}
encapsulate_this();
echo say_hello();
echo $test_variable;
some_file.php:
$test_variable = "Hi!";
function say_hello() {
return "Hello!";
}
输出:
Hello!
在上面的例子中,回显 say_hello() 会起作用,但 $test_variable 不会。
我怎样才能成功地封装包含文件中的函数,使它们不能被全局访问?
【问题讨论】:
标签: php scope encapsulation