我安装了一个 SMF 论坛,它是一个非 OO 应用程序。我希望在论坛内的目录中创建一个额外的应用程序,其中包括来自 SMF 的 SSI 文件,然后使用 SMF 中的功能,但在面向对象的设置中。
如果这是不可能的,那么请停止阅读并解释原因,因为我正在努力找出这里出了什么问题(可能是我已经醒了将近 24 小时的事实)
所以这就是我所拥有的:
SMF 有一个文件,SSI.php - 包含时,它会设置全局变量的负载,并设置
define('SMF', 'SSI');
我有一个名为控制台的文件夹,其中包含一系列文件。从 index.php,我调用我的 Servlet 文件,它有
require_once '../SSI.php';
class Servlet
{
public function __construct(){
}
public function processRequest(){
echo SMF;
var_dump($context) //This is the global variable that should be set
}
}
这会输出 SSI,然后输出未定义的变量错误。
这可能真的很明显,但为什么要设置定义而不是全局上下文?如果我在课堂外这样做,它会起作用。
谢谢!
-编辑-
只是为了解释为什么这不是链接问题的重复......我真的认为它不需要太多解释,除了这是一个关于特定范围问题和特定错误的特定问题,针对我的应用程序量身定制OO 和过程编程的混合,这会导致一些混乱。
我的问题不是“什么是变量范围?”
谢谢。